<SEC-DOCUMENT>0000860731-20-000008.txt : 20200219
<SEC-HEADER>0000860731-20-000008.hdr.sgml : 20200219
<ACCEPTANCE-DATETIME>20200219165407
ACCESSION NUMBER:		0000860731-20-000008
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		105
CONFORMED PERIOD OF REPORT:	20191231
FILED AS OF DATE:		20200219
DATE AS OF CHANGE:		20200219

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TYLER TECHNOLOGIES INC
		CENTRAL INDEX KEY:			0000860731
		STANDARD INDUSTRIAL CLASSIFICATION:	SERVICES-PREPACKAGED SOFTWARE [7372]
		IRS NUMBER:				752303920
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		5101 TENNYSON PKWY
		CITY:			PLANO
		STATE:			TX
		ZIP:			75024
		BUSINESS PHONE:		9727133700

	MAIL ADDRESS:	
		STREET 1:		5101 TENNYSON PKWY
		CITY:			PLANO
		STATE:			TX
		ZIP:			75024

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	TYLER CORP /NEW/
		DATE OF NAME CHANGE:	19930328

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	TYLER THREE INC
		DATE OF NAME CHANGE:	19600201
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>tyl12312019-10k.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!--p:37C5DD3ECF7A5D469ABD7A1696109DE7,x:48616cc63c5e478eb06392ddcfde3dd1-->
<!-- Document created using Wdesk  -->
<!-- Copyright 2020 Workiva -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:schedoi-fednote="http://fasb.org/dis/schedoi-fednote/2019-01-31" xmlns:fs-interest="http://fasb.org/dis/fs-interest/2019-01-31" xmlns:sfp-ibo="http://fasb.org/stm/sfp-ibo/2019-01-31" xmlns:sfp-sbo="http://fasb.org/stm/sfp-sbo/2019-01-31" xmlns:sic-std="http://xbrl.sec.gov/sic-std/2011-01-31" xmlns:stpr-std="http://xbrl.sec.gov/stpr-std-std-std/2018-01-31" xmlns:currency-ent-std="http://xbrl.sec.gov/currency-ent-std/2019-01-31" xmlns:lea="http://fasb.org/dis/lea/2019-01-31" xmlns:ctbl="http://fasb.org/dis/ctbl/2019-01-31" xmlns:guar="http://fasb.org/dis/guar/2019-01-31" xmlns:ru="http://fasb.org/dis/ru/2019-01-31" xmlns:stpr-all="http://xbrl.sec.gov/stpr-all-all-all/2018-01-31" xmlns:leas="http://fasb.org/dis/leas/2019-01-31" xmlns:sfp-clreo="http://fasb.org/stm/sfp-clreo/2019-01-31" xmlns:iaoi="http://fasb.org/dis/iaoi/2019-01-31" xmlns:soi-ins="http://fasb.org/stm/soi-ins/2019-01-31" xmlns:country-ent-std="http://xbrl.sec.gov/country-ent-std/2017-01-31" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:fs-insa="http://fasb.org/dis/fs-insa/2019-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:cce="http://fasb.org/dis/cce/2019-01-31" xmlns:inv="http://fasb.org/dis/inv/2019-01-31" xmlns:naics-ent-std="http://xbrl.sec.gov/naics-ent-std/2017-01-31" xmlns:srt-std="http://fasb.org/srt-std/2019-01-31" xmlns:stpr-ent-all="http://xbrl.sec.gov/stpr-ent-all-all-all/2018-01-31" xmlns:stpr-ent-std="http://xbrl.sec.gov/stpr-ent-std-std-std/2018-01-31" xmlns:schedoi-iiaa="http://fasb.org/dis/schedoi-iiaa/2019-01-31" xmlns:us-arcroles="http://fasb.org/us-arcroles/2019-01-31" xmlns:dccpoa="http://fasb.org/dis/dccpoa/2019-01-31" xmlns:soi-sbi="http://fasb.org/stm/soi-sbi/2019-01-31" xmlns:us-gaap-all="http://fasb.org/us-gaap-all/2019-01-31" xmlns:scf-sd="http://fasb.org/stm/scf-sd/2019-01-31" xmlns:ceclcalc3l="http://fasb.org/dis/ceclcalc3l/2019-01-31" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei-ent-all="http://xbrl.sec.gov/dei-ent-all/2019-01-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/deprecated" xmlns:naics-all="http://xbrl.sec.gov/naics-all/2017-01-31" xmlns:re="http://fasb.org/dis/re/2019-01-31" xmlns:srt-types="http://fasb.org/srt-types/2019-01-31" xmlns:reorg="http://fasb.org/dis/reorg/2019-01-31" xmlns:invco="http://fasb.org/dis/invco/2019-01-31" xmlns:currency-ent-all="http://xbrl.sec.gov/currency-ent-all/2019-01-31" xmlns:currency-std="http://xbrl.sec.gov/currency-std/2019-01-31" xmlns:currency-ent-dep="http://xbrl.sec.gov/currency-ent-dep/2019-01-31" xmlns:aro="http://fasb.org/dis/aro/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2019-01-31" xmlns:ocpfs="http://fasb.org/dis/ocpfs/2019-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2019-01-31" xmlns:naics-std="http://xbrl.sec.gov/naics-std/2017-01-31" xmlns:srt-all="http://fasb.org/srt-all/2019-01-31" xmlns:codification-part="http://fasb.org/codification-part/2019-01-31" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:deprecated1="http://www.xbrl.org/2009/role/deprecated" xmlns:sec-re="http://fasb.org/dis/sec-re/2019-01-31" xmlns:soi-int="http://fasb.org/stm/soi-int/2019-01-31" xmlns:emjv="http://fasb.org/dis/emjv/2019-01-31" xmlns:sec-suppc="http://fasb.org/dis/sec-suppc/2019-01-31" xmlns:equity="http://fasb.org/dis/equity/2019-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:se="http://fasb.org/dis/se/2019-01-31" xmlns:crcrb="http://fasb.org/dis/crcrb/2019-01-31" xmlns:edco="http://fasb.org/dis/edco/2019-01-31" xmlns:te="http://fasb.org/dis/te/2019-01-31" xmlns:dei-all="http://xbrl.sec.gov/dei-all/2019-01-31" xmlns:fs-bd="http://fasb.org/dis/fs-bd/2019-01-31" xmlns:invest-all="http://xbrl.sec.gov/invest-all/2013-01-31" xmlns:hco="http://fasb.org/dis/hco/2019-01-31" xmlns:fs-bt="http://fasb.org/dis/fs-bt/2019-01-31" xmlns:us-roles="http://fasb.org/us-roles/2019-01-31" xmlns:dr="http://fasb.org/dis/dr/2019-01-31" xmlns:ero="http://fasb.org/dis/ero/2019-01-31" xmlns:country-ent-all="http://xbrl.sec.gov/country-ent-all/2017-01-31" xmlns:schedoi-oocw="http://fasb.org/dis/schedoi-oocw/2019-01-31" xmlns:cecl="http://fasb.org/dis/cecl/2019-01-31" xmlns:rpd="http://fasb.org/dis/rpd/2019-01-31" xmlns:schedoi-sumhold="http://fasb.org/dis/schedoi-sumhold/2019-01-31" xmlns:ceclcalc2="http://fasb.org/dis/ceclcalc2/2019-01-31" xmlns:othliab="http://fasb.org/dis/othliab/2019-01-31" xmlns:soi-egm="http://fasb.org/stm/soi-egm/2019-01-31" xmlns:schedoi-shorthold="http://fasb.org/dis/schedoi-shorthold/2019-01-31" xmlns:soi="http://fasb.org/stm/soi/2019-01-31" xmlns:diha="http://fasb.org/dis/diha/2019-01-31" xmlns:debt="http://fasb.org/dis/debt/2019-01-31" xmlns:schedoi-hold="http://fasb.org/dis/schedoi-hold/2019-01-31" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:invest-std="http://xbrl.sec.gov/invest-std/2013-01-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-gaap-ent-std="http://fasb.org/us-gaap-ent-std/2019-01-31" xmlns:bc="http://fasb.org/dis/bc/2019-01-31" xmlns:sic-ent-all="http://xbrl.sec.gov/sic-ent-all/2011-01-31" xmlns:exch-ent-std="http://xbrl.sec.gov/exch-ent-std/2019-01-31" xmlns:invest-ent-all="http://xbrl.sec.gov/invest-ent-all/2013-01-31" xmlns:rcc="http://fasb.org/dis/rcc/2019-01-31" xmlns:rd="http://fasb.org/dis/rd/2019-01-31" xmlns:sfp-ucreo="http://fasb.org/stm/sfp-ucreo/2019-01-31" xmlns:eui="http://fasb.org/dis/eui/2019-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:ap="http://fasb.org/dis/ap/2019-01-31" xmlns:soi-reit="http://fasb.org/stm/soi-reit/2019-01-31" xmlns:fs-mort="http://fasb.org/dis/fs-mort/2019-01-31" xmlns:sec-reins="http://fasb.org/dis/sec-reins/2019-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:sec-cndfir="http://fasb.org/dis/sec-cndfir/2019-01-31" xmlns:sr="http://fasb.org/dis/sr/2019-01-31" xmlns:currency-all="http://xbrl.sec.gov/currency-all/2019-01-31" xmlns:scf-dbo="http://fasb.org/stm/scf-dbo/2019-01-31" xmlns:fs-fhlb="http://fasb.org/dis/fs-fhlb/2019-01-31" xmlns:crcpb="http://fasb.org/dis/crcpb/2019-01-31" xmlns:dei-ent-std="http://xbrl.sec.gov/dei-ent-std/2019-01-31" xmlns:us-types="http://fasb.org/us-types/2019-01-31" xmlns:scf-inv="http://fasb.org/stm/scf-inv/2019-01-31" xmlns:scf-indira="http://fasb.org/stm/scf-indira/2019-01-31" xmlns:bsoff="http://fasb.org/dis/bsoff/2019-01-31" xmlns:exch-ent-all="http://xbrl.sec.gov/exch-ent-all/2019-01-31" xmlns:oi="http://fasb.org/dis/oi/2019-01-31" xmlns:soi-indira="http://fasb.org/stm/soi-indira/2019-01-31" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:schedoi-otsh="http://fasb.org/dis/schedoi-otsh/2019-01-31" xmlns:tyl="http://www.tylertech.com/20191231" xmlns:sfp-dbo="http://fasb.org/stm/sfp-dbo/2019-01-31" xmlns:cc="http://fasb.org/dis/cc/2019-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:crcsbp="http://fasb.org/dis/crcsbp/2019-01-31" xmlns:disops="http://fasb.org/dis/disops/2019-01-31" xmlns:reference="http://www.xbrl.org/2009/role/reference" xmlns:cn-part="http://fasb.org/cn-part/2019-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:srt-roles="http://fasb.org/srt-roles/2019-01-31" xmlns:country-std="http://xbrl.sec.gov/country-std/2017-01-31" xmlns:net="http://www.xbrl.org/2009/role/net" xmlns:scf-indir="http://fasb.org/stm/scf-indir/2019-01-31" xmlns:rlnro="http://fasb.org/dis/rlnro/2019-01-31" xmlns:ts="http://fasb.org/dis/ts/2019-01-31" xmlns:us-gaap-std="http://fasb.org/us-gaap-std/2019-01-31" xmlns:naics-ent-all="http://xbrl.sec.gov/naics-ent-all/2017-01-31" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:scf-dir="http://fasb.org/stm/scf-dir/2019-01-31" xmlns:dei-std="http://xbrl.sec.gov/dei-std/2019-01-31" xmlns:ni="http://fasb.org/dis/ni/2019-01-31" xmlns:sec-mort="http://fasb.org/dis/sec-mort/2019-01-31" xmlns:fifvd="http://fasb.org/dis/fifvd/2019-01-31" xmlns:otherexp="http://fasb.org/dis/otherexp/2019-01-31" xmlns:scf-re="http://fasb.org/stm/scf-re/2019-01-31" xmlns:sec-vq="http://fasb.org/dis/sec-vq/2019-01-31" xmlns:sec-sum="http://fasb.org/dis/sec-sum/2019-01-31" xmlns:exch-std="http://xbrl.sec.gov/exch-std/2019-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:ir="http://fasb.org/dis/ir/2019-01-31" xmlns:sheci="http://fasb.org/stm/sheci/2019-01-31" xmlns:foct="http://fasb.org/dis/foct/2019-01-31" xmlns:soc="http://fasb.org/stm/soc/2019-01-31" xmlns:scf-sbo="http://fasb.org/stm/scf-sbo/2019-01-31" xmlns:inctax="http://fasb.org/dis/inctax/2019-01-31" xmlns:ppe="http://fasb.org/dis/ppe/2019-01-31" xmlns:country-all="http://xbrl.sec.gov/country-all/2017-01-31" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:con="http://fasb.org/dis/con/2019-01-31" xmlns:sic-ent-std="http://xbrl.sec.gov/sic-ent-std/2011-01-31" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:invest-ent-std="http://xbrl.sec.gov/invest-ent-std/2013-01-31" xmlns:fs-ins="http://fasb.org/dis/fs-ins/2019-01-31" xmlns:eps="http://fasb.org/dis/eps/2019-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:iago="http://fasb.org/dis/iago/2019-01-31" xmlns:pay="http://fasb.org/dis/pay/2019-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:tin-part="http://fasb.org/tin-part/2019-01-31" xmlns:acec="http://fasb.org/dis/acec/2019-01-31" xmlns:us-gaap-entryPoint-all="http://fasb.org/us-gaap-entryPoint-all/2019-01-31" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:nt="http://fasb.org/dis/nt/2019-01-31" xmlns:spc="http://fasb.org/stm/spc/2019-01-31" xmlns:exch-all="http://xbrl.sec.gov/exch-all/2019-01-31" xmlns:ides="http://fasb.org/dis/ides/2019-01-31" xmlns:sec-supins="http://fasb.org/dis/sec-supins/2019-01-31" xmlns:sic-all="http://xbrl.sec.gov/sic-all/2011-01-31" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:regop="http://fasb.org/dis/regop/2019-01-31" xmlns:sfp-cls="http://fasb.org/stm/sfp-cls/2019-01-31" xmlns:com="http://fasb.org/stm/com/2019-01-31" xmlns:soi-re="http://fasb.org/stm/soi-re/2019-01-31" xmlns:crcgen="http://fasb.org/dis/crcgen/2019-01-31" xmlns:exch-ent-dep="http://xbrl.sec.gov/exch-ent-dep/2019-01-31" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:ei="http://fasb.org/dis/ei/2019-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
	<head>
		<meta http-equiv="Content-Type" content="text/html" />
		<title>Document</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:AmendmentFlag" id="Fact-948211530FEF65733BBAA8A414301E16-wk-Fact-948211530FEF65733BBAA8A414301E16" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:CurrentFiscalYearEndDate" id="Fact-5C02BC6E296E0E18E286A94EC5CE38E8-wk-Fact-5C02BC6E296E0E18E286A94EC5CE38E8">--12-31</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:DocumentFiscalPeriodFocus" id="Fact-49653BFE60137FBE514DA8A413FA0014-wk-Fact-49653BFE60137FBE514DA8A413FA0014">FY</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:DocumentFiscalYearFocus" id="Fact-CC4B11CE931313D2C3D5A8A4145041AD-wk-Fact-CC4B11CE931313D2C3D5A8A4145041AD">2019</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:EntityCentralIndexKey" id="Fact-70F04E808263F92FA88EA8A4146C647F-wk-Fact-70F04E808263F92FA88EA8A4146C647F">0000860731</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="tyl:RemainingEstimatedEconomicLife" id="Fact-7D46A2592C7CF49839DD44EE965C608D-wk-Fact-7D46A2592C7CF49839DD44EE965C608D">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MaximumMember" name="tyl:RevenueFromContractWithCustomerContractTerm" id="Fact-ECF8958BD2CEFD9871F4A8BF5EF6B3C8-wk-Fact-ECF8958BD2CEFD9871F4A8BF5EF6B3C8">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerContractTerm" id="Fact-01E9E1086A297A20F7F9A8BF2E9DB7AA-wk-Fact-01E9E1086A297A20F7F9A8BF2E9DB7AA">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerContractTerm" id="Fact-F8FE39A06D22C809A9A3A8BDC77D1525-wk-Fact-F8FE39A06D22C809A9A3A8BDC77D1525">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerContractTerm" id="Fact-7520DA5D9C25CB643CA7A8C724B111F2-wk-Fact-7520DA5D9C25CB643CA7A8C724B111F2">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerPaymentTerm" id="Fact-5CA53F7ADE571EBBB06A2F9F41AB3E16-wk-Fact-5CA53F7ADE571EBBB06A2F9F41AB3E16">P30D</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="Fact-2C1442A5674F1BE943FCA8BE266D6D5B-wk-Fact-2C1442A5674F1BE943FCA8BE266D6D5B">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" id="Fact-130017D73FF7F665FE6EA8BD7DC28861-wk-Fact-130017D73FF7F665FE6EA8BD7DC28861">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" name="tyl:SalesCommissionsAmortizationPeriod" id="Fact-745F43E8AB12C5A012B5A8C04DC7AEA4-wk-Fact-745F43E8AB12C5A012B5A8C04DC7AEA4">P3Y</ix:nonNumeric><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2018Q4" name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact-EED93D0C4D28ED7679DFA8A41450EAE4-wk-Fact-EED93D0C4D28ED7679DFA8A41450EAE4">0.01</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2019Q4" name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact-8AFDE256490EA957D994A8A41440AA1A-wk-Fact-8AFDE256490EA957D994A8A41440AA1A">0.01</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:CommonStockSharesAuthorized" id="Fact-49E4F475A06DA26DE7E7A8A41444D3C6-wk-Fact-49E4F475A06DA26DE7E7A8A41444D3C6">100000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:CommonStockSharesAuthorized" id="Fact-5633C250DCE942335274A8A414406432-wk-Fact-5633C250DCE942335274A8A414406432">100000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:CommonStockSharesIssued" id="Fact-0936DBFBEEE02B123591A8A414503AF1-wk-Fact-0936DBFBEEE02B123591A8A414503AF1">48147969</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:CommonStockSharesIssued" id="Fact-D75183BB130CC54EDEB7A8A41438AADD-wk-Fact-D75183BB130CC54EDEB7A8A41438AADD">48147969</ix:nonFraction><ix:nonFraction decimals="0" unitRef="usd" contextRef="FD2017Q4YTD" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" id="Fact-C0FAF529882CBDDB865FA8A414286B3A-wk-Fact-C0FAF529882CBDDB865FA8A414286B3A">0</ix:nonFraction><ix:nonFraction decimals="0" unitRef="usd" contextRef="FD2018Q4YTD" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" id="Fact-72B6356A712FE21FF33FA8A4142C2FC4-wk-Fact-72B6356A712FE21FF33FA8A4142C2FC4">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usd" contextRef="FD2017Q4YTD" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" id="Fact-E93EF2EC8A66AFBC8EE2A8A4142C972A-wk-Fact-E93EF2EC8A66AFBC8EE2A8A4142C972A">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usd" contextRef="FD2018Q4YTD" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" id="Fact-C83F582989866200B52CA8A4142C7992-wk-Fact-C83F582989866200B52CA8A4142C7992">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usd" contextRef="FD2017Q4YTD" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" id="Fact-20E75505C66FD0AF93DAA8A4142CC048-wk-Fact-20E75505C66FD0AF93DAA8A4142CC048">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usd" contextRef="FD2018Q4YTD" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" id="Fact-DFDBB6369BA3EB38BD1FA8A4143052C0-wk-Fact-DFDBB6369BA3EB38BD1FA8A4143052C0">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2018Q4" name="us-gaap:PreferredStockParOrStatedValuePerShare" id="Fact-F3AA839B09CBF4740DECA8A4143876FE-wk-Fact-F3AA839B09CBF4740DECA8A4143876FE">10.00</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2019Q4" name="us-gaap:PreferredStockParOrStatedValuePerShare" id="Fact-B8CF3AF2463FEC9DA070A8A414440CE4-wk-Fact-B8CF3AF2463FEC9DA070A8A414440CE4">10.00</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:PreferredStockSharesAuthorized" id="Fact-3D3F7BA7B2DC3B3A2B91A8A4143C68D5-wk-Fact-3D3F7BA7B2DC3B3A2B91A8A4143C68D5">1000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:PreferredStockSharesAuthorized" id="Fact-D5BB2B6738495EF5E6FFA8A414482947-wk-Fact-D5BB2B6738495EF5E6FFA8A414482947">1000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:PreferredStockSharesIssued" id="Fact-C66B66186D94BE1CAD93A8A4143C48AF-wk-Fact-C66B66186D94BE1CAD93A8A4143C48AF">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:PreferredStockSharesIssued" id="Fact-4F82E8DB8574E36D0B49A8A4144C7197-wk-Fact-4F82E8DB8574E36D0B49A8A4144C7197">0</ix:nonFraction><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-641093AA82E9E491A006A8A413F6C431-wk-Fact-641093AA82E9E491A006A8A413F6C431">P39Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-7828F7610A84BC509E23A8A413F678E9-wk-Fact-7828F7610A84BC509E23A8A413F678E9">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-81A7A0C0A455993BF452A8A413F6CA80-wk-Fact-81A7A0C0A455993BF452A8A413F6CA80">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-FC4BCE16DAADF17DC86FA8A413F6964D-wk-Fact-FC4BCE16DAADF17DC86FA8A413F6964D">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact-A30828361E3212D7493AA8EDB20D00EE-wk-Fact-A30828361E3212D7493AA8EDB20D00EE">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact-1DE8DDC1E50DA4AC44A9A8C2096E2E12-wk-Fact-1DE8DDC1E50DA4AC44A9A8C2096E2E12">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact-60E51B9415E736589932A8C265BD9707-wk-Fact-60E51B9415E736589932A8C265BD9707">P3Y</ix:nonNumeric><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:TreasuryStockShares" id="Fact-9D2C3E93AC3333DE916FA8A4143CC190-wk-Fact-9D2C3E93AC3333DE916FA8A4143CC190">9872505</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:TreasuryStockShares" id="Fact-23025D420FD6A8921A2AA8A414489BE4-wk-Fact-23025D420FD6A8921A2AA8A414489BE4">8839352</ix:nonFraction></ix:hidden><ix:references><link:schemaRef xlink:href="tyl-20191231.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="FD2019Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2020Q1Feb18">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2020-02-18</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q2">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-06-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2019Q1Jan01_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-01-01</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2019Q1Jan01">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-01-01</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:RecordHoldingsPtyLimitedMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis">tyl:RetentionReceivableMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q3YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q2QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-04-01</xbrli:startDate>
			<xbrli:endDate>2019-06-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis">tyl:RetentionReceivableMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-01-01</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MinimumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MaximumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-02-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2018Q3aug31_us-gaap_BusinessAcquisitionAxis_tyl_CaseloadPROLPMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CaseloadPROLPMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-08-31</xbrli:startDate>
			<xbrli:endDate>2018-08-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-04-30</xbrli:startDate>
			<xbrli:endDate>2018-04-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SageDataSecurityLLCMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SageDataSecurityLLCMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-04-30</xbrli:startDate>
			<xbrli:endDate>2018-04-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2019Q4Oct30_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-10-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-10-30</xbrli:startDate>
			<xbrli:endDate>2019-10-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-02-28</xbrli:startDate>
			<xbrli:endDate>2019-02-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q3AUG_us-gaap_BusinessAcquisitionAxis_tyl_DigitalHealthDepartmentInc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:DigitalHealthDepartmentInc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-08-02</xbrli:startDate>
			<xbrli:endDate>2017-08-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2019Q1Feb1_us-gaap_BusinessAcquisitionAxis_tyl_CivicLLCMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CivicLLCMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-02-01</xbrli:startDate>
			<xbrli:endDate>2019-02-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2018Q2april30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-04-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2018Q4oct1_us-gaap_BusinessAcquisitionAxis_tyl_TradeMasterInc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:TradeMasterInc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-10-01</xbrli:startDate>
			<xbrli:endDate>2018-10-01</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2018Q4Dec07_us-gaap_BusinessAcquisitionAxis_tyl_SceneDoc.Inc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SceneDoc.Inc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-07</xbrli:startDate>
			<xbrli:endDate>2018-12-07</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MicroPactAndMyCivicMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MicroPactAndMyCivicMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q4NOV_us-gaap_BusinessAcquisitionAxis_tyl_Radio1033LLCMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:Radio1033LLCMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-11-29</xbrli:startDate>
			<xbrli:endDate>2017-11-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q2MAY_us-gaap_BusinessAcquisitionAxis_tyl_Modria.comMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:Modria.comMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-05-30</xbrli:startDate>
			<xbrli:endDate>2017-05-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tyl:LathamNewYorkMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_YarmouthMaineMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tyl:YarmouthMaineMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_ShortTermDebtTypeAxis_us-gaap_LetterOfCreditMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-09-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2020-02-19</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_srt_RangeAxis_srt_MaximumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_srt_RangeAxis_srt_MinimumMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
					<us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2020-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
				</xbrldi:typedMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-10-01</xbrli:startDate>
			<xbrli:endDate>2018-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-10-01</xbrli:startDate>
			<xbrli:endDate>2019-12-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-07-01</xbrli:startDate>
			<xbrli:endDate>2019-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-01</xbrli:startDate>
			<xbrli:endDate>2018-09-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-01-01</xbrli:startDate>
			<xbrli:endDate>2018-03-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q2QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-04-01</xbrli:startDate>
			<xbrli:endDate>2018-06-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0000860731</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-01-01</xbrli:startDate>
			<xbrli:endDate>2019-03-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:unit id="letters_of_credit">
		<xbrli:measure>tyl:letters_of_credit</xbrli:measure>
	</xbrli:unit><xbrli:unit id="usd">
		<xbrli:measure>iso4217:USD</xbrli:measure>
	</xbrli:unit><xbrli:unit id="shares">
		<xbrli:measure>xbrli:shares</xbrli:measure>
	</xbrli:unit><xbrli:unit id="usdPerShare">
		<xbrli:divide>
			<xbrli:unitNumerator>
				<xbrli:measure>iso4217:USD</xbrli:measure>
			</xbrli:unitNumerator>
			<xbrli:unitDenominator>
				<xbrli:measure>xbrli:shares</xbrli:measure>
			</xbrli:unitDenominator>
		</xbrli:divide>
	</xbrli:unit><xbrli:unit id="number">
		<xbrli:measure>xbrli:pure</xbrli:measure>
	</xbrli:unit><xbrli:unit id="subsidiary">
		<xbrli:measure>tyl:subsidiary</xbrli:measure>
	</xbrli:unit><xbrli:unit id="segment">
		<xbrli:measure>tyl:segment</xbrli:measure>
	</xbrli:unit><xbrli:unit id="legal_matter">
		<xbrli:measure>tyl:legal_matter</xbrli:measure>
	</xbrli:unit><xbrli:unit id="business_unit">
		<xbrli:measure>tyl:business_unit</xbrli:measure>
	</xbrli:unit></ix:resources></ix:header></div><div><a id="s08A784510D5A5D3CB764C712B16B3FB7"></a></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:100%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:14pt;"><span style="font-family:inherit;font-size:14pt;font-weight:bold;">UNITED STATES</span></div><div style="line-height:120%;text-align:center;font-size:14pt;"><span style="font-family:inherit;font-size:14pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">WASHINGTON, D.C. 20549</span></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:14pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:18.51851851851852%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:55%;"></td><td style="width:45%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="padding-top:4px;text-align:right;font-size:14pt;"><span style="font-family:inherit;font-size:14pt;font-weight:bold;">FORM</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="padding-top:4px;text-align:left;font-size:14pt;"><span style="font-family:inherit;font-size:14pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e609-wk-Fact-3032AEC5021219D3B3A7A92C2BA78E2D" name="dei:DocumentType" contextRef="FD2019Q4YTD">10-K</ix:nonNumeric></span></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:94.81481481481482%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:12pt;"><span style="font-family:Arial Unicode MS;font-size:12pt;"><span><ix:nonNumeric id="d48711479e623-wk-Fact-A81B3457578414B46883A93010A67F5E" name="dei:DocumentAnnualReport" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric></span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES AND EXCHANGE ACT OF 1934</span></div></td></tr></table></div><span style="font-family:inherit;font-size:9pt;font-weight:bold;">   </span></div><div style="line-height:120%;text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">For the Fiscal Year Ended </span><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><span style="white-space:nowrap"><ix:nonNumeric id="d48711479e635-wk-Fact-B6A26983FFDB40F55D53A93083E8FF5E" name="dei:DocumentPeriodEndDate" contextRef="FD2019Q4YTD" format="ixt:datemonthdayyearen">December 31, 2019</ix:nonNumeric></span></span></span><span style="font-family:inherit;font-size:9pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">OR</span></div><div style="line-height:120%;text-align:center;font-size:11pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:94.81481481481482%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;"><span><ix:nonNumeric id="d48711479e654-wk-Fact-88909BFADEFDDDB2F0FAA93177EB710B" name="dei:DocumentTransitionReport" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div></td></tr></table></div><span style="font-family:inherit;font-size:9pt;font-weight:bold;">Commission File Number </span><span><ix:nonNumeric id="d48711479e663-wk-Fact-8774328790848717A9BDA9343E0467A2" name="dei:EntityFileNumber" contextRef="FD2019Q4YTD"><span style="font-size:9pt;font-weight:bold;">1-10485</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:9pt;font-weight:bold;"> </span></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:14pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.333333333333336%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:100%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:14pt;"><span style="font-family:inherit;font-size:14pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e679-wk-Fact-65D911D4DD11AC654425A9371666FB08" name="dei:EntityRegistrantName" contextRef="FD2019Q4YTD">TYLER TECHNOLOGIES, INC.</ix:nonNumeric></span></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">(Exact name of registrant as specified in its charter)</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:89.25925925925927%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:26%;"></td><td style="width:27%;"></td><td style="width:47%;"></td></tr><tr><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e700-wk-Fact-1D120F6BBF48713B8857A9379234F159" name="dei:EntityIncorporationStateCountryCode" contextRef="FD2019Q4YTD" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e710-wk-Fact-A8ADB8666558DBCEED0CA937B44B6A6D" name="dei:EntityTaxIdentificationNumber" contextRef="FD2019Q4YTD">75-2303920</ix:nonNumeric></span></span></div></td></tr><tr><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(State or other jurisdiction of incorporation</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">or organization)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(I.R.S. employer</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">identification no.)</span></div></td></tr><tr><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e738-wk-Fact-2BE263F9BE355B16DA18A939DAC6D717" name="dei:EntityAddressAddressLine1" contextRef="FD2019Q4YTD">5101 Tennyson Parkway</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e754-wk-Fact-81AA926F5268E3C67658A93DDFC5434D" name="dei:EntityAddressCityOrTown" contextRef="FD2019Q4YTD">Plano,</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e759-wk-Fact-9161F3E010CC02CA09C1A93E02A7C422" name="dei:EntityAddressStateOrProvince" contextRef="FD2019Q4YTD" format="ixt-sec:stateprovnameen">Texas</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e764-wk-Fact-08FAA8459DBFE83BBECEA937FFFC78C6" name="dei:EntityAddressPostalZipCode" contextRef="FD2019Q4YTD">75024</ix:nonNumeric></span></span></div></td></tr><tr><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(Address of principal executive offices)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(Zip code)</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">Registrant&#8217;s telephone number, including area code: (</span><span><ix:nonNumeric id="d48711479e786-wk-Fact-21663C05A7D8D1BA963CA93FB7B43A47" name="dei:CityAreaCode" contextRef="FD2019Q4YTD"><span style="font-size:9pt;font-weight:bold;">972</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:9pt;font-weight:bold;">)&#160;</span><span><ix:nonNumeric id="d48711479e791-wk-Fact-D63CE68D8A8786499B28A93FD7656CC1" name="dei:LocalPhoneNumber" contextRef="FD2019Q4YTD"><span style="font-size:9pt;font-weight:bold;">713-3700</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:9pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">__________________________________</span></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">Securities registered pursuant to Section&#160;12(b) of the Act:</span></div><div style="line-height:120%;font-size:9pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.77777777777777%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:36%;"></td><td style="width:30%;"></td><td style="width:34%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Title of each class</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Trading symbol</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Name of each exchange</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">on which registered</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e834-wk-Fact-1628C041619DB539CD2CA940A282C03E" name="dei:Security12bTitle" contextRef="FD2019Q4YTD">COMMON STOCK, $0.01 PAR VALUE</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e839-wk-Fact-C20F1A4AAC67197511A130564F6F8784" name="dei:TradingSymbol" contextRef="FD2019Q4YTD">TYL</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;"><span><ix:nonNumeric id="d48711479e844-wk-Fact-6CB0F2BE1B48D79E3135A9407801A3A1" name="dei:SecurityExchangeName" contextRef="FD2019Q4YTD" format="ixt-sec:exchnameen">New York Stock Exchange</ix:nonNumeric></span></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:5px;text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">Securities registered pursuant to Section&#160;12(g) of the Act:</span></div><div style="line-height:120%;text-align:center;font-size:9pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:18.51851851851852%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:100%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">NONE</span></div></td></tr></table></div></div><div style="line-height:120%;text-indent:37px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160; </span><span><ix:nonNumeric id="d48711479e869-wk-Fact-4022D36D00250A44224EA94763220766" name="dei:EntityWellKnownSeasonedIssuer" contextRef="FD2019Q4YTD"><span style="font-size:8pt;">No</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span></div><div style="line-height:120%;text-indent:37px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">Indicate by check mark if the registrant is not required to file reports pursuant to Section&#160;13 or 15(d) of the Act.&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160; </span><span><ix:nonNumeric id="d48711479e883-wk-Fact-5DB1783C1E3062BAD0CCA94731797D90" name="dei:EntityVoluntaryFilers" contextRef="FD2019Q4YTD"><span style="font-size:8pt;">No</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span></div><div style="line-height:120%;text-indent:37px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;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)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;&#160;&#160;</span><span><ix:nonNumeric id="d48711479e893-wk-Fact-16F9236D0D6737E68532A948309FD0C6" name="dei:EntityCurrentReportingStatus" contextRef="FD2019Q4YTD"><span style="font-size:8pt;">Yes</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></div><div style="line-height:120%;text-indent:37px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">Indicate by check mark if disclosure of delinquent filer pursuant to Item&#160;405 of Regulation S-K is not contained herein, and will not be contained, to the best of the registrant&#8217;s knowledge, in definitive proxy or information statements incorporated by reference in Part III of the Form 10-K or any amendment to the Form 10-K.&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160; No&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span></div><div style="line-height:120%;text-indent:37px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">Indicate by check mark whether the registrant has submitted electronically and posted on its corporate Web site, if any, every Interactive Data file required to be submitted and posted 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 and post such files).&#160;&#160;&#160;&#160;</span><span><ix:nonNumeric id="d48711479e916-wk-Fact-CE4B5C4E00048F0621F9A94874DAB6DB" name="dei:EntityInteractiveDataCurrent" contextRef="FD2019Q4YTD"><span style="font-size:8pt;">Yes</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></div><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">             Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer," "accelerated filer,&#8221; "smaller reporting company," and "emerging growth company" in Rule 12b-2 of the Exchange Act. (Check one):</span></div><div style="line-height:120%;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:90.37037037037037%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"></td></tr><tr><td style="width:30%;"></td><td style="width:3%;"></td><td style="width:31%;"></td><td style="width:3%;"></td><td style="width:25%;"></td><td style="width:3%;"></td><td style="width:5%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48711479e950-wk-Fact-B63A417B521F6D2C175BA9499F845630" name="dei:EntityFilerCategory" contextRef="FD2019Q4YTD" format="ixt-sec:entityfilercategoryen">Large accelerated filer</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accelerated&#160;Filer</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-accelerated Filer (Do not check if smaller reporting company)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Smaller&#160;Reporting&#160;Company</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;"><span><ix:nonNumeric id="d48711479e1054-wk-Fact-A11AA5791D180C4894C8A949F3675F7F" name="dei:EntitySmallBusiness" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Emerging Growth Company</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;"><span><ix:nonNumeric id="d48711479e1090-wk-Fact-87BFA3B62A8126EDBE85A949F4908092" name="dei:EntityEmergingGrowthCompany" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></div></td></tr><tr><td colspan="5" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">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. </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:11pt;"><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:5px;padding-top:5px;font-size:12pt;"><span style="font-family:inherit;font-size:8pt;">          Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act.)&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span><ix:nonNumeric id="d48711479e1131-wk-Fact-269191241FE2ACF7DFE8A94A74C509C0" name="dei:EntityShellCompany" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox"><span style="font-family:Arial Unicode MS;font-size:11pt;">&#9744;</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Arial Unicode MS;font-size:12pt;">&#9746;</span></div><div style="line-height:120%;padding-bottom:5px;padding-top:5px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">          The aggregate market value of the voting stock held by non-affiliates of the registrant was </span><span style="font-family:inherit;font-size:8pt;"><span>$<ix:nonFraction id="d48711479e1141-wk-Fact-7B3799B198D47F12DDA4C767947F3F7D" name="dei:EntityPublicFloat" contextRef="FI2019Q2" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">8,172,267,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:8pt;"> based on the reported last sale price of common stock on </span><span style="font-family:inherit;font-size:8pt;">June&#160;30, 2019</span><span style="font-family:inherit;font-size:8pt;">, which is the last business day of the registrant&#8217;s most recently completed second fiscal quarter.</span></div><div style="line-height:120%;padding-bottom:5px;padding-top:5px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">          The number of shares of common stock of the registrant outstanding on </span><span style="font-family:inherit;font-size:8pt;">February&#160;18, 2020</span><span style="font-family:inherit;font-size:8pt;"> was </span><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48711479e1156-wk-Fact-6A5C2A605A0CF75A076AC767DB5E3939" name="dei:EntityCommonStockSharesOutstanding" contextRef="I2020Q1Feb18" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">39,396,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:8pt;">.</span></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="line-height:120%;padding-top:4px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">         <ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:DocumentsIncorporatedByReferenceTextBlock" id="TextSelection-4353DD133BCF7275F17EA92EB8EC42BB-0-wk-Fact-6D49B2A5E360F0123EB6A92ECD74B7EF" continuedAt="TextSelection-4353DD133BCF7275F17EA92EB8EC42BB-1" escape="true">Certain information required by Part III of this annual report is incorporated by reference from the registrant&#8217;s definitive proxy statement for its annual meeting of stockholders to be held on May&#160;12, 2020.</ix:nonNumeric></span></div><ix:continuation id="TextSelection-4353DD133BCF7275F17EA92EB8EC42BB-1"><div style="line-height:120%;padding-top:5px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:100%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div><br/></div><hr style="page-break-after:always"></hr><div><a id="s3A2EF99FF9635AAB836F49FF93BBF815"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">TYLER TECHNOLOGIES, INC.</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">FORM 10-K</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">TABLE OF CONTENTS</span></div><div style="line-height:120%;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:9%;"></td><td style="width:85%;"></td><td style="width:6%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">PAGE</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;font-weight:bold;" href="#s63873C3F57085B5581916D5F5EECADF0"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">PART I</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item&#160;1.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s60A6FF84F4FE5DA5ADC5C26D5A16D2D9"><span style="font-family:inherit;font-size:8pt;">Business</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s60A6FF84F4FE5DA5ADC5C26D5A16D2D9">3</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item&#160;1A.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s3AFA22498F03597791F484F540ABC509"><span style="font-family:inherit;font-size:8pt;">Risk Factors</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s3AFA22498F03597791F484F540ABC509">11</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 1B.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s0F196698946359EA940DBF45C4BB18CD"><span style="font-family:inherit;font-size:8pt;">Unresolved Staff Comments</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s0F196698946359EA940DBF45C4BB18CD">17</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 2.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sD8121525359555C79D324F8541AE5C5B"><span style="font-family:inherit;font-size:8pt;">Properties</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sD8121525359555C79D324F8541AE5C5B">17</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 3.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s40DE5B1255AE5074B10173B7364D1C2D"><span style="font-family:inherit;font-size:8pt;">Legal Proceedings</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s40DE5B1255AE5074B10173B7364D1C2D">17</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 4.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sB983AC3E580B55EF940653D18516CB00"><span style="font-family:inherit;font-size:8pt;">Submission of Matters to a Vote of Security Holders</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sB983AC3E580B55EF940653D18516CB00">17</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;font-weight:bold;" href="#sC3152210576B5347802809354BB0EE5E"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">PART II</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 5.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s133D32118AC75A119C1CC32B44C9A3C2"><span style="font-family:inherit;font-size:8pt;">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s133D32118AC75A119C1CC32B44C9A3C2">18</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 6.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s924135EBA02151B79E01480848849B0B"><span style="font-family:inherit;font-size:8pt;">Selected Financial Data</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s924135EBA02151B79E01480848849B0B">20</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 7.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sE6DB24F27AD15D209DB411C576A02394"><span style="font-family:inherit;font-size:8pt;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sE6DB24F27AD15D209DB411C576A02394">21</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 7A.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sD0F62C90322D591B96FBA14614F915AF"><span style="font-family:inherit;font-size:8pt;">Quantitative and Qualitative Disclosures about Market Risk</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sD0F62C90322D591B96FBA14614F915AF">39</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 8.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s98A5246E125F54C89C717C54ABFE91A1"><span style="font-family:inherit;font-size:8pt;">Financial Statements and Supplementary Data</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s98A5246E125F54C89C717C54ABFE91A1">39</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 9.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sF77AD57C3D585BCF956C5CA908EDD72E"><span style="font-family:inherit;font-size:8pt;">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sF77AD57C3D585BCF956C5CA908EDD72E">39</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 9A.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s566EB778C6105FDF8F3BA0E5067667A7"><span style="font-family:inherit;font-size:8pt;">Controls and Procedures</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s566EB778C6105FDF8F3BA0E5067667A7">40</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 9B.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s1A046954C8F25DE5B1554462CB9F5086"><span style="font-family:inherit;font-size:8pt;">Other Information</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s1A046954C8F25DE5B1554462CB9F5086">40</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;font-weight:bold;" href="#s396E1772AB4C551A8D3D42C55BBDCECF"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">PART III</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 10.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC2333A7C6DFC5C1782855F9921C87EF7"><span style="font-family:inherit;font-size:8pt;">Directors, Executive Officers and Corporate Governance</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC2333A7C6DFC5C1782855F9921C87EF7">41</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 11.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s31D4374DC6F45513A53DFEACDC3DD114"><span style="font-family:inherit;font-size:8pt;">Executive Compensation</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s31D4374DC6F45513A53DFEACDC3DD114">41</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 12.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s08AEFC92E5C75E418622E436762AD347"><span style="font-family:inherit;font-size:8pt;">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s08AEFC92E5C75E418622E436762AD347">41</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 13.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC1E498A3EFD55CF6AD8B83F0072BC166"><span style="font-family:inherit;font-size:8pt;">Certain Relationships and Related Transactions, and Director Independence</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC1E498A3EFD55CF6AD8B83F0072BC166">41</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 14.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sEEE9F2DA753B510B943E5F4A5621921B"><span style="font-family:inherit;font-size:8pt;">Principal Accounting Fees and Services</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sEEE9F2DA753B510B943E5F4A5621921B">41</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;font-weight:bold;" href="#sD991F53E5FB6515A8CC70297FAAD4612"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">PART IV</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Item 15.</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s05194164D29055CA9D9D500A319C17AE"><span style="font-family:inherit;font-size:8pt;">Exhibits, Financial Statement Schedules</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s05194164D29055CA9D9D500A319C17AE">42</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC81EB64D13FC54068976A8651175226E"><span style="font-family:inherit;font-size:8pt;">Signatures</span></a></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sC81EB64D13FC54068976A8651175226E">44</a></div></td></tr></table></div></div><div style="line-height:120%;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2</span></div></div><hr style="page-break-after:always"></hr><div><a id="s63873C3F57085B5581916D5F5EECADF0"></a></div><div><br/></div><div style="line-height:120%;padding-bottom:16px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PART I</span></div><div><a id="s60A6FF84F4FE5DA5ADC5C26D5A16D2D9"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 1.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">BUSINESS.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DESCRIPTION OF BUSINESS</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc. (&#8220;Tyler&#8221;) is a major provider of integrated information management solutions and services for the public sector, with a focus on local governments. We partner with clients to make government more accessible to the public, more responsive to the needs of citizens and more efficient in its operations. We have a broad line of software solutions and services to address the information technology (&#8220;IT&#8221;) needs of major areas of operations for cities, counties, schools and other government entities. A majority of our clients have our software installed in-house. For clients who prefer not to physically acquire the software and hardware, most of our software applications can be delivered as software as a service (&#8220;SaaS&#8221;), which primarily utilize the Tyler private cloud. We provide professional IT services to our clients, including software and hardware installation, data conversion, training and, at times, product modifications. In addition, we are the nation&#8217;s largest provider of outsourced property appraisal services for taxing jurisdictions. We also provide continuing client support services to ensure product performance and reliability, which provides us with long-term client relationships and a significant base of recurring maintenance revenue. In addition, we provide electronic document filing (&#8220;e-filing&#8221;) solutions, which simplify the filing and management of court documents.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">MARKET OVERVIEW</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The state and local government market is one of the largest and most decentralized IT markets in the country, consisting of all 50 states, approximately 3,000 counties, 36,000 cities and towns and 13,600 school districts. This market is also comprised of approximately 37,000 special districts and other agencies, each with specialized delegated responsibilities and unique information management requirements.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Traditionally, local government bodies and agencies performed state-mandated duties, including property assessment, record keeping, road maintenance, law enforcement, administration of election and judicial functions, and the provision of welfare assistance. Today, a host of emerging and urgent issues are confronting local governments, each of which demands a service response. These areas include criminal justice and corrections, administration and finance, public safety, health and human services, planning, regulatory and maintenance and records and document management. Transfers of responsibility from the federal and state governments to county and municipal governments and agencies in these and other areas also place additional service and financial requirements on these local government units. In addition, constituents of local governments are increasingly demanding improved service and better access to information from public entities. As a result, local governments recognize the increasing value of information management systems and services to, among other things, improve revenue collection, provide increased access to information, and streamline delivery of services to their constituents. Local government bodies are now recognizing that &#8220;e-government&#8221; is an additional responsibility for community development. From integrated tax systems to integrated civil and criminal justice information systems, many counties and cities have benefited significantly from the implementation of jurisdiction-wide systems that allow different agencies or government offices to share data and provide a more comprehensive approach to information management. Many city and county governmental agencies also have unique individual information management requirements, which must be tailored to the specific functions of each particular office.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many local governments also have difficulties attracting and retaining the staff necessary to support their IT functions. As a result, they seek to establish long-term relationships with reliable providers of high quality IT products and services such as Tyler.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Although local governments often face budgetary constraints in their operations, their primary revenue sources are usually property taxes, and to a lesser extent, utility billings and other fees, which historically tend to be relatively stable. In addition, the acquisition of new technology typically enables local governments to operate more efficiently, and often provides a measurable return on investment that justifies the purchase of software and related services.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gartner, Inc., a leading information technology research and advisory company, estimates that state and local government application and vertical specific software spending will grow from $17.9 billion in 2020 to $21.1 billion in 2023. The professional services and support segments of the market are expected to expand from $27.5 billion in 2020 to $29.9 billion in 2023. Application and vertical specific software sales in the primary and secondary education segments of the market is expected to expand from $3.0 billion in 2020 to $3.7 billion in 2023 while professional services and support are expected to grow from $2.5 billion in 2020 to $2.8 billion in 2023.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PRODUCTS AND SERVICES</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide a comprehensive and flexible suite of products and services that addresses the information technology needs of cities, counties, schools and other local government entities. We derive our revenues from five primary sources:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales of software licenses and royalties</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based arrangements</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software services</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Maintenance and support</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Appraisal services</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We design, develop, market and support a broad range of software solutions to serve mission-critical &#8220;back-office&#8221; functions of the public sector with focus on local governments. Many of our software applications include Internet-accessible solutions that allow for real-time public access to a variety of information or that allow the public to transact business with local governments via the Internet. Our software solutions and services are generally grouped in eight major areas:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial Management and Education</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Courts and Justice</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Public Safety</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property Appraisal and Tax</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Planning, Regulatory and Maintenance</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Land and Vital Records Management</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Data and Insights</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Case Management and Business Process Management</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Each of our core software systems consists of several fully integrated applications. For clients who acquire software for use on premises, we generally license our systems under standard perpetual license agreements that provide the client with a fully paid, nonexclusive, nontransferable right to use the software. In some of the product areas, such as financial management and education and property appraisal and tax, we offer multiple solutions designed to meet the needs of different sized governments.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also offer SaaS arrangements, which generally utilize the Tyler private cloud, for clients who do not wish to maintain, update and operate these systems or to make up-front capital expenditures to implement these advanced technologies. For these clients, the software and client data are hosted at our data centers or at third-party locations, and clients typically sign multi-year contracts for these subscription-based services.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Historically, we have had a greater proportion of our annual revenues in the second half of our fiscal year due to governmental budget and spending cycles and the timing of system implementations for clients desiring to &#8220;go live&#8221; at the beginning of the calendar year.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A description of our suites of products and services follows:</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Software Licenses</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Financial Management and Education</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our financial management and education solutions are enterprise resource planning systems for local governments, which integrate information across all facets of a client organization. Our financial management solutions include modular fund accounting systems that can be tailored to meet the needs of virtually any government agency or not-for-profit entity. Our financial management systems include modules for general ledger, budget preparation, fixed assets, requisitions, purchase orders, bid management, accounts payable, contract management, accounts receivable, investment management, inventory control, project and grant accounting, work orders, job </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">4</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">costing, GASB reporting, payroll and human resources. All of our financial management systems are intended to conform to government auditing and financial reporting requirements and generally accepted accounting principles.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We sell utility billing systems that support the billing and collection of metered and non-metered services, along with multiple billing cycles. Our Web-enabled utility billing solutions allow clients to access information online such as average consumption and transaction history. In addition, our systems can accept secured Internet payments via credit cards and checks.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also offer specialized products that automate numerous city and county functions, including municipal courts, parking tickets, equipment and project costing, animal licenses, business licenses, permits and inspections, code enforcement, citizen complaint tracking, ambulance billing, fleet maintenance, and cemetery records management.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition to providing financial management systems to K-12 schools, we sell student information systems for K-12 schools, which manage such activities as scheduling, grades and attendance. We also offer student transportation solutions to manage school bus routing optimization, fleet management, field trips and other related functions.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler&#8217;s financial management and education solutions include Web components that enhance local governments&#8217; service capabilities by facilitating online access to information for both employees and citizens and enabling online transactions.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Courts and Justice</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We offer a complete, fully integrated suite of judicial solutions designed to handle complex, multi-jurisdictional county or statewide implementations as well as single county systems. Our solutions help eliminate duplicate data entry, promote more effective business procedures, and improve efficiency across the entire justice process.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our unified court case management system is designed to automate the tracking and management of information involved in all case types, including criminal, traffic, civil, family, probate and juvenile courts. It also tracks the status of cases, processes fines and fees and generates the specialized judgment and sentencing documents, notices and forms required in the court process. Documents received by the court can be scanned into the electronic case file and easily retrieved for viewing. Documents generated by the court can be electronically signed and automatically attached to the electronic case file. Additional modules automate the management of court calendars, coordinate judges' schedules and generate court dockets. Our targeted courtroom technologies allow courts to rapidly review calendars, cases and view documents in the courtroom. Courts may also take advantage of our related jury management system. We also offer a solution for online dispute resolution that automates the flow and resolution of common and historically time-consuming disputes including debt, landlord, tenant, small claims, child custody and other case types.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our court and law enforcement systems allow the public to access, via the Internet, a variety of information, including non-confidential criminal and civil court records, jail booking and release information, bond and bondsmen information, and court calendars and dockets. In addition, our systems allow cities and counties to accept payments for traffic and parking tickets over the Internet, with a seamless and automatic interface to back-office justice and financial systems.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our prosecutor system enables state attorney offices to track and manage criminal cases, including detailed victim information and private case notes. Investigative reports and charging instrument documents can be generated and stored for later viewing. Prosecutors can schedule and record the outcome of grand jury hearings. When integrated with the court system, prosecutors can view the electronic case file and related documents, as well as manage witness lists and subpoenas needed for court hearings.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our supervision system allows pre-trial and probation offices to manage offender caseloads. Supervision officers can track contact schedules, risk/needs assessments and reassessments, detailed drug test results, employment histories, compliance with conditions and payments of fees and restitution. Documents and forms, like pre-sentence investigations or revocation orders, can be generated and stored for easy viewing. When integrated with the jail and court systems, supervision officers obtain easy access and quick notification of offenders that have court hearings scheduled, are arrested locally, and have new warrants issued.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also offer a court case management solution that automates and tracks all aspects of municipal courts and offices. It is a fully integrated, graphical application that provides effective case management, document processing and cash/bond management. This system complies with all state reporting and conviction reports and includes electronic reporting and also integrates with certain of our financial management solutions and public safety solutions.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Public Safety</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our public safety software is a fully unified and comprehensive solution for law enforcement, fire and EMS, including 911 / computer aided dispatch (&#8220;CAD&#8221;), records management, mobile computing, corrections management, Web-based information sharing and decision support. The modules are fully integrated, utilizing a common database and providing full functionality between modules, reducing data entry. The software provides fast, efficient dispatching, and quick access to records, reports and actionable information from an agency&#8217;s database.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our 911 / CAD solutions provide real-time, critical response dispatch functions in either single- or multi-jurisdictional environments. When integrated with our records management software, a vital link exists between dispatch and the most comprehensive records database available. Within seconds, the dispatch operator and the officer in the field can access critical information, such as prior incidents and outstanding warrants, increasing officer knowledge and safety. The solutions offer strong geographic information systems integration to help dispatchers quickly locate and send the best response during an emergency. Tyler&#8217;s 911 / CAD solutions dramatically improve performance, response time and unit safety.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our records management solutions for law enforcement and fire track statistical, operational, investigative and management data for inquiry and reporting. The systems create an efficient case processing workflow and help solve crimes with an accessible database that maintains central files on people, places, property, vehicles and criminal activity. Tyler&#8217;s public safety records management solutions enable easy access to information and simplify reporting.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our mobile computing solutions for law enforcement and fire provide instant access to local, state, regional and federal databases via mobile devices. Officers and firefighters can experience the benefits of obtaining critical, real-time information in the field, while saving time by preparing reports directly in their vehicles.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our jail management systems document and manage information that meets the requirements of a modern jail facility. This includes the booking and housing of persons in custody, supervising defendants on a pre-trial release, maintaining offenders sentenced to local incarceration and billing other agencies for housing inmates. Searching, reporting and tracking features are integrated, allowing reliable, up-to-date access to current arrest and incarceration data, including digital mug shots. Our systems also provide warrant checks for visitors or book-ins, inmate classification and risk assessment, commissary, property and medical processing, automation of statistics, and state and federal reporting.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our civil processing solutions manage civil process needs from document receipt through service, payment process and final closeout. We also have a mobile electronic citation solution through which law enforcement officers can easily enter citation information in a mobile device, which is automatically uploaded into the court or public safety records management systems, rather than hand-writing citations that must be re-entered into the systems.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Property Appraisal and Tax</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide systems and software that automate the appraisal and assessment of real and personal property, including record keeping, mass appraisal, inquiry and protest tracking, appraisal and tax roll generation, tax statement processing, and electronic state-level reporting. These systems are image and video-enabled to facilitate the storage of and access to the many property-related documents and for the online storage of digital photographs of properties for use in defending values in protest situations. Other related tax applications are available for agencies that bill and collect taxes, including cities, counties, school tax offices, and special taxing and collection agencies. These systems support billing, collections, lock box operations, mortgage company electronic payments, and various reporting requirements.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Planning, Regulatory and Maintenance</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our planning, regulatory and maintenance software solutions are designed for public sector agencies such as community development, planning, building, code enforcement, tax and revenues, public works, transportation, land control, environmental, fire safety, storm water management, regulatory controls and engineering.&#160;These solutions help public sector agencies better manage their day-to-day business functions while streamlining and automating the many aspects of their land management, permitting and planning systems.&#160;Our mobile solutions extend automation to the field and Web access brings online services to citizens 24 hours a day, 365 days a year.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">6</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Land and Vital Records Managemen</span><span style="font-family:inherit;font-size:10pt;">t</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also offer a number of specialized software applications designed to help local governments enhance and automate operations involving records and document management. These systems record, scan and index information for the many documents maintained by local governments, such as deeds, mortgages, liens, UCC financing statements and vital records (birth, death and marriage certificates). These applications include fully integrated imaging systems with batch and scan processing capabilities and fully integrated receipting and cashiering systems, as well as Web-enabled public access.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our content management solutions allow state and local governments and school districts to capture, deliver, manage and archive electronic information. These solutions streamline the flow of digital information throughout the organization to increase efficiency by transforming paper forms and documents into electronic images that drive key business processes.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Data and Insights</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our data and insights solutions make existing government data discoverable, usable, and actionable for government workers and the people they serve. The data and insights solution includes a data-as-a-service platform and cloud applications for open data and citizen engagement, exclusively for city, county, state, and federal government organizations. Our data and insights solutions allow government to analyze, visualize, and securely share data across multiple departments and programs. These solutions deliver data-driven innovation and cost-savings by bringing together disparate systems and leveraging the cloud to dramatically enhance the effectiveness of government programs, to improve quality of life for residents, to positively impact local economies, and to achieve excellence in government operations.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Case Management and Business Process Management</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We offer a low-code application development platform solution for case management and business process management. Whether based on premises or in the cloud, its Data-First&#8482; approach allows the application to be implemented immediately and configured continuously, enabling clients to get to work quickly while keeping costs low.  Our low code application platform allows government agencies the ability to track, collaborate, and report on the data that drives activities forward.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Subscription-Based Services</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based revenue is primarily derived from our SaaS arrangements, which generally utilize the Tyler private cloud, as well as our transaction-based offerings such as e-filing solutions, online dispute resolution solutions, and online payment services.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are able to provide the majority of our software products through our SaaS model. The clients who choose this model typically do not wish to maintain, update and operate these systems or make up-front capital expenditures to implement these advanced technologies. The contract terms for these arrangements range from one to 10 years but are typically contracted for initial periods of three to five years. The majority of our SaaS or hosting arrangements include additional professional services as well as maintenance and support services. In certain arrangements, the client may also acquire a license to the software.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As part of our subscription-based services, we provide e-filing solutions that simplify the filing and management of court related documents for courts and law offices. Revenues for e-filing are included in subscription-based revenues and are derived from transaction fees and in some cases, fixed fee arrangements. Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. </span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Software Services</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide a variety of professional IT services to clients who utilize our software products. Virtually all of our clients contract with us for installation, training, and data conversion services in connection with their implementation of Tyler&#8217;s software solutions. The complete implementation process for a typical system includes planning, design, data conversion, set-up and testing. At the culmination of the implementation process, a data implementation team is generally onsite at the client&#8217;s facility to ensure the smooth go-live with the new system. Implementation fees are charged separately to clients on either a fixed-fee or hourly charge basis, depending on the contract.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Both in connection with the installation of new systems and on an ongoing basis, we provide extensive training services and programs related to our products and services. Training can be provided in our training centers, onsite at clients&#8217; locations, or at meetings and conferences and can be customized to meet clients&#8217; requirements. The vast majority of our clients contract with us for training services, both to improve their employees&#8217; proficiency and productivity and to fully utilize the functionality of our systems. Training services are generally billed on an hourly or daily basis, along with travel and other expenses.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">7</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Maintenance and Support</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Following the implementation of our software systems, we provide ongoing software support services to assist our clients in operating the systems and to periodically update the software. Support is provided to clients over the phone or via the Web through help desks staffed by our client support representatives. For more complicated issues, our staff, with the clients' permission, can log on to clients&#8217; systems remotely. We maintain our clients&#8217; software largely through releases that contain improvements and incremental additions of features and functionality, along with updates necessary because of legislative or regulatory changes.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Virtually all of our software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts, with a typical fee based on a percentage of the software product&#8217;s license fee. These fees can generally be increased on renewal and may also increase as new license fees increase. Maintenance and support fees are generally paid annually in advance. Most maintenance contracts automatically renew unless the client or Tyler gives notice of termination prior to expiration. Similar support is provided to our SaaS clients and is included in their subscription fees, which are classified as subscription-based revenues.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Appraisal Services</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are the nation&#8217;s largest provider of property appraisal outsourcing services for local government taxing authorities. These services include</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The physical inspection of commercial and residential properties</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Data collection and processing</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sophisticated computer analyses for property valuation</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Preparation of tax rolls</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Community education regarding the assessment process</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Arbitration between taxpayers and the assessing jurisdiction</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Local government taxing authorities normally reappraise properties from time to time to update values for tax assessment purposes and to maintain equity in the taxing process. In some jurisdictions, law mandates reassessment cycles; in others, they are discretionary. While some taxing jurisdictions perform reappraisals in-house, many local governments outsource this function because of its cyclical nature and because of the specialized knowledge and expertise requirements associated with it. Our appraisal services business unit has operated in this business since 1938.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In some instances, we also provide property tax and/or appraisal software products in connection with appraisal outsourcing projects, while other clients may only engage us to provide appraisal services. Appraisal outsourcing services are somewhat seasonal in nature to the extent that winter weather conditions reduce the productivity of data collection activities in connection with those projects.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">STRATEGY</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our objective is to grow our revenue and earnings organically, supplemented by focused strategic acquisitions. The key components of our business strategy are to:</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Provide high quality, value&#8211;added products and services to our clients</span><span style="font-family:inherit;font-size:10pt;">. We compete on the basis of, among other things, delivering to clients our deep domain expertise in local government operations through the highest value products and services in the market. We believe we have achieved a reputation as a premium product and service provider to the local government market.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Continue to expand our product and service offerings</span><span style="font-family:inherit;font-size:10pt;">. While we already have what we believe to be the broadest line of software products for local governments, we continually upgrade our core software applications and expand our complementary product and service offerings to respond to technological advancements and the changing needs of our clients. In 2010, we began providing e-filing for courts and law offices, which simplifies the filing and management of court related documents. We believe revenue from e-filing solutions will continue to grow over time as more local and state governments mandate electronic document filings. We also offer solutions that allow the public to access data and conduct transactions with local governments, such as paying traffic tickets, property taxes and utility bills online. We believe that the addition of such features enhances the market appeal of our core products. We have also broadened our offerings of consulting and business process reengineering services.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">8</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Expand our client base</span><span style="font-family:inherit;font-size:10pt;">. We seek to establish long-term relationships with new clients primarily through our sales and marketing efforts. While we currently have clients in all 50 states, Canada, the Caribbean, the United Kingdom, Australia, and other international locations, not all of our solutions have achieved nationwide geographic penetration. We intend to continue to expand into new geographic markets by adding sales staff and targeting marketing efforts by solutions in those areas. We also intend to continue to expand our customer base to include more large governments. While our traditional market focus has primarily been on small and mid-sized governments, our increased size and market presence, together with the technological advances and improved scalability of certain of our solutions, are allowing us to achieve increasing success in selling to larger clients. We also expect to expand our presence in international markets by leveraging our leadership position in the United States through the disciplined pursuit of selected opportunities in other countries.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Expand our existing client relationships</span><span style="font-family:inherit;font-size:10pt;">. Our existing customer base offers significant opportunities for additional sales of solutions and services that we currently offer, but that existing clients do not fully utilize. Add-on sales to existing clients typically involve lower sales and marketing expenses than sales to new clients.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Grow recurring revenues</span><span style="font-family:inherit;font-size:10pt;">. We have a large recurring revenue base from maintenance and support and subscription-based services, which generated revenues of </span><span style="font-family:inherit;font-size:10pt;">$726.7 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">67%</span><span style="font-family:inherit;font-size:10pt;"> of total revenues, in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. We have historically experienced very low customer turnover (approximately </span><span style="font-family:inherit;font-size:10pt;">2%</span><span style="font-family:inherit;font-size:10pt;"> annually) and recurring revenues continue to grow as the installed customer base increases. Subscription-based revenues have been our fastest growing revenue category over the past five years, increasing from </span><span style="font-family:inherit;font-size:10pt;">$111.9 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2015</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">$296.4 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Maximize economies of scale and take advantage of financial leverage in our business</span><span style="font-family:inherit;font-size:10pt;">. We seek to build and maintain a larger client base to create economies of scale, enabling us to provide value-added products and services to our clients while expanding our operating margins. Because we sell primarily &#8220;off-the-shelf&#8221; software, increased sales of the same solutions result in incrementally higher gross margins. In addition, we believe that we have a marketing and administrative infrastructure in place that can be leveraged to accommodate significant long-term growth without proportionately increasing selling, general and administrative expenses.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Attract and retain highly qualified employees</span><span style="font-family:inherit;font-size:10pt;">. We believe that the depth and quality of our management and staff is one of our significant strengths, and that the ability to retain such employees is crucial to our continued growth and success. We believe that our stable management team, financial strength and growth opportunities, as well as our leadership position in the local government market, enhance our attractiveness as an employer for highly skilled employees.</span></div><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Pursue selected strategic acquisitions</span><span style="font-family:inherit;font-size:10pt;">. While we expect to primarily grow internally, from time to time we selectively pursue strategic acquisitions that provide us with one or more of the following:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">New products and services to complement our existing offerings</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Entry into new markets related to the public sector</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;padding-bottom:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">New clients and/or geographic expansion</span></div></td></tr></table><div style="line-height:120%;padding-left:0px;padding-top:16px;text-indent:0px;"><span style="padding-top:16px;font-family:inherit;font-size:10pt;padding-right:24px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Establish strategic alliances</span><span style="font-family:inherit;font-size:10pt;">. In October 2019, we announced a strategic collaboration agreement with Amazon Web Services ("AWS") for cloud hosting services. This agreement brings together Tyler, the nation's largest software company exclusively focused on the public sector, and AWS, the broadest and deepest cloud platform. Specifically, the agreement with AWS provides the framework for development, training and collaboration in order to support next-generation applications that have the scalability, resiliency, and security AWS offers. It will assist Tyler in accelerating innovation and the development of strategic initiatives. These initiatives will bring the most advanced cloud-native services to Tyler clients, improving the flow of information and providing a better experience for state, local, and federal governments.</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SALES, MARKETING, AND CLIENTS</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We market our products and services through direct sales and marketing personnel located throughout the United States. Other in-house sales staff focus on add-on sales, professional services and support.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales of new systems are typically generated from referrals from other government offices or departments within a county or municipality, referrals from other local governments, relationships established between sales representatives and county or local officials, contacts at trade shows, direct mailings, and direct contact from prospects already familiar with us. We are active in numerous national, state, county, and local government associations, and participate in annual meetings, trade shows, and educational events.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">9</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Clients consist primarily of federal, state, county and municipal agencies, school districts and other local government offices. In counties, clients include the auditor, treasurer, tax assessor/collector, county clerk, district clerk, county and district court judges, probation officers, sheriff, and county appraiser. At municipal government sites, clients include directors from various departments, including administration, finance, utilities, public works, code enforcement, personnel, purchasing, taxation, municipal court, and police. Contracts for software products and services are generally implemented over periods of three months to one year, although some complex implementations may span multiple years, with annually renewing maintenance and support update agreements thereafter. Although either the client or we can terminate these agreements, historically almost all support and maintenance agreements are automatically renewed annually. During </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, approximately </span><span style="font-family:inherit;font-size:10pt;">40%</span><span style="font-family:inherit;font-size:10pt;"> of our revenue was attributable to ongoing support and maintenance agreements.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">COMPETITION</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We compete with numerous local, regional, and national firms that provide or offer some or many of the same solutions and services that we provide. Many of these competitors are smaller companies that may be able to offer less expensive solutions than ours. Many of these firms operate within a specific geographic area and/or in a narrow product or service niche. We also compete with national firms, some of which have greater financial and technical resources than we do, including Oracle Corporation, Infor, SAP AG, Workday, Inc., CentralSquare Technologies, Thomson Reuters Corporation, Motorola Solutions, Inc., Axon Enterprise, Inc., and Constellation Software, Inc. In addition, we sometimes compete with consulting and systems integration firms, which develop custom systems, primarily for larger governments. We also occasionally compete with central internal information service departments of local governments, which requires us to persuade the end-user department to discontinue service by its own personnel and outsource the service to us.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We compete on a variety of factors, including price, service, name recognition, reputation, technological capabilities, and the ability to modify existing products and services to accommodate the individual requirements of the client. Our ability to offer an integrated system of applications for several offices or departments is often a competitive advantage. Local governmental units often are required to seek competitive proposals through a request for proposal process and some prospective clients use consultants to assist them with the proposal and vendor selection process.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SUPPLIERS</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Substantially all of the computers, peripherals, printers, scanners, operating system software, office automation software, and other equipment necessary for the implementation and provision of our software systems and services are presently available from several third-party sources. Hardware is purchased on original equipment manufacturer or distributor terms at discounts from retail. We have not experienced any significant supply problems.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">BACKLOG</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our revenue backlog was approximately </span><span style="font-family:inherit;font-size:10pt;">$1.46 billion</span><span style="font-family:inherit;font-size:10pt;">, compared to </span><span style="font-family:inherit;font-size:10pt;">$1.25 billion</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. The backlog represents signed contracts under which the revenue has not been recognized as of year-end. Approximately </span><span style="font-family:inherit;font-size:10pt;">$720.6 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">49%</span><span style="font-family:inherit;font-size:10pt;">, of the backlog is expected to be recognized during </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INTELLECTUAL PROPERTY, PROPRIETARY RIGHTS, AND LICENSES</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We regard certain features of our internal operations, software, and documentation as confidential and proprietary and rely on a combination of contractual restrictions, trade secret laws and other measures to protect our proprietary intellectual property. We generally do not rely on patents. We believe that, due to the rapid rate of technological change in the computer software industry, trade secrets and copyright protection are less significant than factors such as knowledge, ability and experience of our employees, frequent product enhancements, and timeliness and quality of support services. We typically license our software products under non-exclusive license agreements, which are generally non-transferable and have a perpetual term.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">EMPLOYEES</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;">5,368</span><span style="font-family:inherit;font-size:10pt;"> employees. None of our employees are represented by a labor union or are subject to collective bargaining agreements. We consider our relations with our employees to be positive.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">10</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INTERNET WEBSITE AND AVAILABILITY OF PUBLIC FILINGS</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We file annual, quarterly, current and other reports, proxy statements and other information with the Securities and Exchange Commission, or SEC, pursuant to the Securities Exchange Act. You may read and copy any materials we file with the SEC at the SEC&#8217;s Public Reference Room by calling the SEC at 1-800-732-0330. The SEC maintains an Internet site that contains reports, proxy and other information statements, and other information regarding issuers, including us, that file electronically with the SEC. The address of this site is http://www.sec.gov.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also maintain a website at www.tylertech.com. We make available free of charge through this site our Annual Report on Form 10-K, Quarterly Reports on Form 10-Q, Forms 4 and 5, Current Reports on Form 8-K, and amendments to those reports filed or furnished pursuant to Section&#160;13(a) or 15(d) of the Exchange Act as soon as reasonably practicable after we electronically file such material with, or furnish it to the SEC. In addition, copies of our annual report will be made available, free of charge, upon written request.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our &#8220;Code of Business Conduct and Ethics&#8221; is also available on our website. We intend to satisfy the disclosure requirements regarding amendments to, or waivers from, a provision of our Code of Business Conduct and Ethics by posting such information on our website.</span></div><div><a id="s3AFA22498F03597791F484F540ABC509"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 1A.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RISK FACTORS.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">An investment in our common stock involves a high degree of risk. Investors evaluating our company should carefully consider the factors described below and all other information contained in this Annual Report. Any of the following factors could materially harm our business, operating results, and financial condition. Additional factors and uncertainties not currently known to us or that we currently consider immaterial could also harm our business, operating results, and financial condition. This section should be read in conjunction with the Financial Statements and related Notes and Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations included in this Annual Report. We may make forward-looking statements from time to time, both written and oral. We undertake no obligation to revise or publicly release the results of any revisions to these forward-looking statements. Our actual results may differ materially from those projected in any such forward-looking statements due to a number of factors, including those set forth below and elsewhere in this Annual Report.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Risks Associated with Our Software Products</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Cyber-attacks and security vulnerabilities can disrupt our business and harm our competitive position.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Threats to IT security can take a variety of forms. Individuals and groups of hackers, and sophisticated organizations including state-sponsored organizations, may take steps that pose threats to our clients and our IT. They may, for example, develop and deploy malicious software to attack our products and services and/or gain access to our networks and data centers, or act in a coordinated manner to launch distributed denial of service or other coordinated attacks. Cyber threats are constantly evolving, thereby increasing the difficulty of detecting and successfully defending against them. Cyber threats can have cascading impacts that unfold with increasing speed across our internal networks and systems and those of our partners and clients. Breaches of our network or data security could disrupt the security of our internal systems and business applications, impair our ability to provide services to our clients and protect the privacy of their data, result in product development delays, compromise confidential or technical business information harming our competitive position, result in theft or misuse of our intellectual property or other assets, require us to allocate more resources to improve technologies, or otherwise adversely affect our business. Our business policies and internal security controls may not keep pace with these evolving threats.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Disclosure of personally identifiable information and/or other sensitive client data could result in liability and harm our reputation.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We store and process increasingly large amounts of personally identifiable information and other confidential information of our clients. The continued occurrence of high-profile data breaches provides evidence of an external environment increasingly hostile to information security. Despite our efforts to improve security controls, it is possible our security controls over personal data, our training of employees on data security, and other practices we follow may not prevent the improper disclosure of sensitive client data that we store and manage. Disclosure of personally identifiable information and/or other sensitive client data could result in liability and harm our reputation.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">11</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Hosting services for some of our products are dependent upon the uninterrupted operation of data centers.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A material portion of our business is provided through software hosting services. These hosting services depend on the uninterrupted operation of data centers and the ability to protect computer equipment and information stored in these data centers against damage that may be caused by natural disaster, fire, power loss, telecommunications or Internet failure, acts of terrorism, unauthorized intrusion, computer viruses, and other similar damaging events. If any of our data centers were to become inoperable for an extended period, we might be unable to fulfill our contractual commitments. Although we take what we believe to be reasonable precautions against such occurrences, we can give no assurance that damaging events such as these will not result in a prolonged interruption of our services, which could result in client dissatisfaction, loss of revenue, and damage to our business.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We run the risk of errors or defects with new products or enhancements to existing products.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our software products are complex and may contain errors or defects, especially when first introduced or when new versions or enhancements are released. Any such defects could result in a loss of revenues or delay market acceptance. Our license agreements typically contain provisions designed to limit our exposure to potential liability. However, it is possible we may not always successfully negotiate such provisions in our client contracts or the limitation of liability provisions may not be effective due to existing or future federal, state, or local laws, ordinances, or judicial decisions. Although we maintain errors and omissions and general liability insurance, and we try to structure contracts to limit liability, we cannot assure you that a successful claim could not be made or would not have a material adverse effect on our future operating results.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We must timely respond to technological changes to be competitive.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The market for our products is characterized by technological change, evolving industry standards in software technology, changes in client requirements, and frequent new product introductions and enhancements. The introduction of products embodying new technologies and the emergence of new industry standards can render existing products obsolete and unmarketable. As a result, our future success will depend, in part, upon our ability to enhance existing products and develop and introduce new products that keep pace with technological developments, satisfy increasingly sophisticated client requirements, and achieve market acceptance. We cannot assure you that we will successfully identify new product opportunities and develop and bring new products to market in a timely and cost-effective manner. The products, capabilities, or technologies developed by others could also render our products or technologies obsolete or noncompetitive. Our business may be adversely affected if we are unable to develop or acquire new software products or develop enhancements to existing products on a timely and cost-effective basis, or if such new products or enhancements do not achieve market acceptance.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We may be unable to protect our proprietary rights.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many of our product and service offerings incorporate proprietary information, trade secrets, know-how, and other intellectual property rights. We rely on a combination of contracts, copyrights, and trade secret laws to establish and protect our proprietary rights in our technology. We cannot be certain that we have taken all appropriate steps to deter misappropriation of our intellectual property. There has also been an apparent evolution in the legal standards and regulations courts and the U.S. patent office may apply in favorably evaluating software patent rights. We are not currently involved in any material intellectual property litigation; however, we may be a party to such litigation in the future to protect our proprietary information, trade secrets, know-how, and other intellectual property rights. We cannot assure you that third parties will not assert infringement or misappropriation claims against us with respect to current or future products. Any claims or litigation, with or without merit, could be time-consuming, costly, and a diversion to management. Any such claims and litigation could also cause product shipment delays or require us to enter into royalty or licensing arrangements. Such royalty or licensing arrangements, if required, may not be available on terms acceptable to us, if at all. Therefore, litigation to defend and enforce our intellectual property rights could have a material adverse effect on our business, regardless of the final outcome of such litigation.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Clients may elect to terminate our maintenance contracts and manage operations internally.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">It is possible that our clients may elect to not renew maintenance contracts for our software, trying instead to maintain and operate the software themselves using their perpetual license rights (excluding software applications that we provide on a hosted or cloud basis). Alternatively, clients may elect to drop maintenance on certain modules that they ultimately decide not to use. This could adversely affect our revenues and profits. Additionally, they may inadvertently allow our intellectual property or other information to fall into the hands of third parties, including our competitors, which could adversely affect our business.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:174%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Material portions of our business require the Internet infrastructure to be reliable.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Part of our future success continues to depend on the use of the Internet as a means to access public information and perform transactions electronically, including, for example, electronic filing of court documents. This in part requires ongoing maintenance of the Internet infrastructure, especially to prevent interruptions in service, as well as additional development of that infrastructure. This requires a reliable network backbone with the necessary speed, data capacity, security, and timely development of complementary products for providing reliable Internet access and services. If this infrastructure fails to be sufficiently developed or be adequately maintained, our business would be harmed because users may not be able to access our government portals.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Risks Associated with Selling Products and Services into the Public Sector Marketplace</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Selling products and services into the public sector poses unique challenges.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We derive substantially all of our revenues from sales of software and services to state, county, and city governments, other federal or municipal agencies, and other public entities. We expect that sales to public sector clients will continue to account for substantially all of our revenues in the future. We face many risks and challenges associated with contracting with governmental entities, including</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Resource limitations caused by budgetary constraints, which may provide for a termination of executed contracts due to a lack of future funding</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Long and complex sales cycles</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Contract payments at times being subject to achieving implementation milestones, and we may have differences with clients as to whether milestones have been achieved</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Political resistance to the concept of contracting with third parties to provide IT solutions</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Legislative changes affecting a local government&#8217;s authority to contract with third parties</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Varying bid procedures and internal processes for bid acceptance</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Various other political factors, including changes in governmental administrations and personnel</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Each of these risks is outside our control. If we fail to adequately adapt to these risks and uncertainties, our financial performance could be adversely affected.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">A prolonged economic slowdown could harm our operations.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A prolonged economic slowdown or recession could reduce demand for our software products and services. Governments may face financial pressures that could in turn affect our growth rate and profitability in the future. There is no assurance that government spending levels will be unaffected by declining or stagnant general economic conditions, and if budget shortfalls occur, they may negatively impact government IT spending and could adversely affect our business.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">The open bidding process creates uncertainty in predicting future contract awards.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many governmental agencies purchase products and services through an open bidding process. Generally, a governmental entity will publish an established list of requirements requesting potential vendors to propose solutions for the established requirements. To respond successfully to these requests for proposals, we must accurately estimate our cost structure for servicing a proposed contract, the time required to establish operations for the proposed client, and the likely terms of any other third-party proposals submitted. We cannot guarantee that we will win any bids in the future through the request for proposal process, or that any winning bids will ultimately result in contracts on favorable terms. Our failure to secure contracts through the open bidding process, or to secure such contracts on favorable terms, may adversely affect our revenue and gross margins.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">13</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We face significant competition from other vendors and potential new entrants into our markets.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe we are a leading provider of integrated solutions for the public sector. However, we face competition from a variety of software vendors that offer products and services similar to those offered by us, as well as from companies offering to develop custom software. We compete based on a number of factors, including</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The attractiveness of our &#8220;evergreen&#8221; business strategy</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The breadth, depth, and quality of our product and service offerings</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The ability to modify our offerings to accommodate particular clients&#8217; needs</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Technological innovation</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Name recognition, reputation and references</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Price</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our financial strength and stability</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe our market is highly fragmented with a large number of competitors that vary in size, product platform, and product scope. Our competitors include consulting firms, publicly held companies that focus on selected segments of the public sector market, and a significant number of smaller, privately held companies. Certain competitors have greater technical, marketing, and financial resources than we do. We cannot assure you that such competitors will not develop products or offer services that are superior to our products or services or that achieve greater market acceptance.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also compete with internal, centralized IT departments of governmental entities, which requires us to persuade the end-user to stop the internal service and outsource to us. In addition, our clients and prospective clients could elect to provide information management services internally through new or existing departments, which could reduce the market for our services.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We could face additional competition as other established and emerging companies enter the public sector software application market and new products and technologies are introduced. Increased competition could result in pricing pressure, fewer client orders, reduced gross margins, and loss of market share. Current and potential competitors may make strategic acquisitions or establish cooperative relationships among themselves or with third parties, thereby increasing the ability of their products to address the needs of our prospective clients. It is possible that new competitors or alliances may emerge and rapidly gain significant market share. We cannot assure you that we will be able to compete successfully against current and future competitors, and the failure to do so would have a material adverse effect upon our business.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Fixed-price contracts may affect our profits.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Some of our contracts are structured on a fixed-price basis, which can lead to various risks, including</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The failure to accurately estimate the resources and time required for an engagement</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The failure to effectively manage our clients&#8217; expectations regarding the scope of services delivered for a fixed fee</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The failure to timely and satisfactorily complete fixed-price engagements within budget</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">If we do not adequately assess and manage these and other risks, we may be subject to cost overruns and penalties, which may harm our financial performance.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Changes in the insurance markets may affect our business.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Some of our clients, primarily those for our property appraisal services, require that we secure performance bonds before they will select us as their vendor. In addition, we have in the past been required to provide letters of credit as security for the issuance of a performance bond. We cannot guarantee that we will be able to secure such performance bonds in the future on terms that are favorable to us, if at all. Our inability to obtain performance bonds on favorable terms or at all could impact our future ability to win some contract awards, particularly large property appraisal services contracts, which could negatively impact revenues. In addition, the general insurance markets may experience volatility, which may lead to future increases in our general and administrative expenses and negatively impact our operating results.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">14</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Risks Associated with Our Periodic Results and Stock Price</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Fluctuations in quarterly revenue could adversely impact our operating results and stock price.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our revenues and operating results are difficult to predict and may fluctuate substantially from quarter to quarter for a variety of reasons, including</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prospective clients&#8217; contracting decisions are often made in the last few weeks of a quarter</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The size of license transactions can vary significantly</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Clients may unexpectedly postpone or cancel procurement processes due to changes in strategic priorities, project objectives, budget, or personnel</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Client purchasing processes vary significantly and a client&#8217;s internal approval, expenditure authorization, and contract negotiation processes can be difficult and time consuming to complete, even after selection of a vendor</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The number, timing, and significance of software product enhancements and new software product announcements by us and our competitors may affect purchase decisions</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We may have to defer revenues under our revenue recognition policies and GAAP</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Clients may elect subscription-based arrangements, which result in lower software license revenues in the initial year as compared to traditional, on-premise software license arrangements, but generate higher overall subscription-based revenues over the term of the contract</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In each fiscal quarter, our expense levels, operating costs, and hiring plans are based to some extent on projections of future revenues and are relatively fixed. If our actual revenues fall below expectations, we could experience a reduction in operating results. Also, if actual revenues or earnings for any given quarter fall below expectations, it may lead to a decline in our stock price.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Increases in service revenue as a percentage of total revenues could decrease overall margins.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We realize lower margins on software and appraisal service revenues than on license revenue. The majority of our contracts include both software licenses and software services. Therefore, an increase in the percentage of software service and appraisal service revenue compared to license revenue could have a detrimental impact on our overall gross margins and could adversely affect operating results.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Increases in investment in research and development could decrease overall margins. </span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">An important element of our corporate strategy is to continue to dedicate a significant amount of resources to research and development and related product and service opportunities both through internal investments and the acquisition of intellectual property from companies that we have acquired. We believe that we must continue to dedicate a significant amount of resources to our research and development efforts to maintain our competitive position. Because we expense the majority of our research and development costs, increased investment could adversely affect operating margins.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Our stock price may be volatile.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The market price of our common stock may be volatile. Examples of factors that may significantly impact our stock price include</span></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Actual or anticipated fluctuations in our operating results</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Announcements of technological innovations, new products, or new contracts by us or our competitors</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Developments with respect to patents, copyrights, or other proprietary rights</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Conditions and trends in the software and other technology industries</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Adoption of new accounting standards</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in financial estimates by securities analysts</span></div></td></tr></table><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">15</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">General market conditions and other factors</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition, the stock market has from time to time experienced significant price and volume fluctuations that have particularly affected the market prices of technology company stocks and may in the future adversely affect the market price of our stock. Sometimes, securities class action litigation is filed following periods of volatility in the market price of a particular company&#8217;s securities. We cannot assure you that similar litigation will not occur in the future with respect to us. Such litigation could result in substantial costs and a diversion of management&#8217;s attention and resources, which could have a material adverse effect upon our financial performance.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Our financial outlook may not be realized.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time, in press releases and otherwise, we may publish forecasts or other forward-looking statements regarding our results, including estimated revenues or earnings. Any forecast of our future performance reflects various assumptions. These assumptions are subject to significant uncertainties, and as a matter of course, any number of them may prove to be incorrect. Further, the achievement of any forecast depends on numerous risks and other factors (including those described in this discussion), many of which are beyond our control. As a result, we cannot be certain that our performance will be consistent with any management forecasts or that the variation from such forecasts will not be material and adverse. Current and potential stockholders are cautioned not to base their entire analysis of our business and prospects upon isolated predictions, but instead are encouraged to utilize our entire publicly available mix of historical and forward-looking information, as well as other available information regarding us, our products and services, and the software industry when evaluating our prospective results of operations.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Risks Associated with Our Growth Strategy and Other General Corporate Risks</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We may experience difficulties in executing our acquisition strategy.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A material portion of our historical growth has resulted from strategic acquisitions. Although our focus is on internal growth, we will continue to identify and pursue strategic acquisitions with suitable candidates. These transactions involve significant challenges and risks, including risks that a transaction does not advance our business strategy; that we do not achieve the expected return on our investment; that we have difficulty integrating business systems and technology; that we have difficulty retaining or integrating new employees; that the transactions distract management from our other businesses; that we acquire unforeseen liabilities; and other unanticipated events. Our future success will depend, in part, on our ability to successfully integrate future acquisitions into our operations. It may take longer than expected to realize the full benefits of these transactions, such as increased revenue, enhanced efficiencies, or increased market share, or the benefits may be ultimately less than we expected. Although we conduct due diligence reviews of potential acquisition candidates, we may not identify all material liabilities or risks related to acquisition candidates. There can be no assurance that any such strategic acquisitions will be accomplished on favorable terms or will result in profitable operations.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Our failure to properly manage growth could adversely affect our business.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We continue to expand our operations by pursuing existing and potential market opportunities. This growth places significant demands on management and operational resources. In order to manage growth effectively, we must implement and improve our operational systems, procedures, and controls on a timely basis. If we fail to implement these systems, our business may be materially adversely affected.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We may be unable to hire, integrate, and retain qualified personnel.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our continued success will depend upon the availability and performance of our key management, sales, marketing, client support, and product development personnel. The loss of key management or technical personnel could adversely affect us.&#160;We believe that our continued success will depend in large part upon our ability to attract, integrate, and retain such personnel.&#160;We have at times experienced and continue to experience challenges, in recruiting qualified personnel.&#160;Competition for qualified software development, sales, and other personnel is intense, and we cannot assure you that we will be successful in attracting and retaining such personnel.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Compliance with changing regulation of corporate governance may result in additional expenses.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changing laws, regulations, and standards relating to corporate governance, compliance, and public disclosure can create uncertainty for public companies. The costs required to comply with such evolving laws are difficult to predict.&#160;To maintain high standards of corporate governance, compliance, and public disclosure, we intend to invest all reasonably necessary resources to comply with evolving standards.&#160;This investment may result in an unforeseen increase in general and administrative expenses and a diversion of management&#8217;s time and attention from revenue-generating activities, which may harm our operating results.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">16</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">We don&#8217;t foresee paying dividends on our common stock.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have not declared nor paid a cash dividend since we entered the business of providing software solutions and services to the public sector in 1998.&#160;We intend to retain earnings for use in the operation and expansion of our business.&#160;We do not anticipate paying any cash dividends on our common stock in the foreseeable future.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Provisions in our certificate of incorporation, bylaws, and Delaware law could deter takeover attempts.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our board of directors may issue up to 1,000,000 shares of preferred stock and may determine the price, rights, preferences, privileges, and restrictions, including voting and conversion rights, of these preferred shares.&#160;These determinations may be made without any further vote or action by our stockholders.&#160;The rights of the holders of our common stock will be subject to, and may be adversely affected by, the rights of the holders of any preferred stock that may be issued in the future.&#160;The issuance of preferred stock may make it more difficult for a third-party to acquire a majority of our outstanding voting stock.&#160;In addition, some provisions of our Certificate of Incorporation, Bylaws, and the Delaware General Corporation Law could also delay, prevent, or make more difficult a merger, tender offer, or proxy contest involving us.</span></div><div><a id="s0F196698946359EA940DBF45C4BB18CD"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 1B.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">UNRESOLVED STAFF COMMENTS.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Not applicable.</span></div><div><a id="sD8121525359555C79D324F8541AE5C5B"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 2.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PROPERTIES.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We occupy a total of approximately </span><span style="font-family:inherit;font-size:10pt;">1.2 million</span><span style="font-family:inherit;font-size:10pt;"> square feet of office space, of which approximately </span><span style="font-family:inherit;font-size:10pt;">746,000</span><span style="font-family:inherit;font-size:10pt;"> square feet is in various office facilities we own.&#160;We own or lease offices for our major operations in the states of Arizona, Arkansas, California, Colorado, Georgia, Iowa, Maine, Massachusetts, Michigan, Missouri, Montana, New Hampshire, New York, North Carolina, Ohio, Tennessee, Texas, Virginia, Washington, Washington D.C., Wisconsin, Ontario and British Columbia, Canada and the Philippines.</span></div><div><a id="s40DE5B1255AE5074B10173B7364D1C2D"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 3.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">LEGAL PROCEEDINGS.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other than routine litigation incidental to our business, there are no material legal proceedings pending to which we are party or to which any of our properties are subject.</span></div><div><a id="sB983AC3E580B55EF940653D18516CB00"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 4.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SUBMISSION OF MATTERS TO A VOTE OF SECURITY HOLDERS.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Not applicable.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">17</span></div></div><hr style="page-break-after:always"></hr><div><a id="sC3152210576B5347802809354BB0EE5E"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PART II</span></div><div><a id="s133D32118AC75A119C1CC32B44C9A3C2"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 5.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our common stock is traded on the New York Stock Exchange under the symbol &#8220;TYL.&#8221; At </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had approximately 1,215 stockholders of record. Most of our stockholders hold their shares in street name; therefore, there are substantially more than 1,215 beneficial owners of our common stock.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We did not pay any cash dividends in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> or </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">. Our bank credit agreement contains restrictions on the payment of cash dividends. We intend to retain earnings for use in the operation and expansion of our business and do not anticipate paying a cash dividend in the foreseeable future.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes certain information related to our stock incentive plan, restricted stock units and our employee stock purchase plan. There are no warrants or rights related to our equity compensation plans as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"></td></tr><tr><td style="width:44%;"></td><td style="width:18%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:14%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:18%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of securities to</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">be issued upon exercise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">of outstanding options, warrants, purchase rights</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">and vesting of restricted stock units as of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">exercise price of outstanding options</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">and unvested restricted stock units</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of securities remaining available for</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">future issuance under</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">equity compensation</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">plans (excluding securities reflected in initial column</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">as of December 31, 2019)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Plan Category</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Equity compensation plans</span></div><div style="padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">approved by security</span></div><div style="padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">shareholders:</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018 Incentive Stock Plan </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4,052,461</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">155.92</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,097,303</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Employee Stock Purchase Plan</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9,681</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">255.02</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">701,837</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Equity compensation plans not</span></div><div style="padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">approved by security</span></div><div style="padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">shareholders</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4,062,142</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">156.15</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,799,140</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had authorization to repurchase up to approximately </span><span style="font-family:inherit;font-size:10pt;">2.6 million</span><span style="font-family:inherit;font-size:10pt;"> additional shares of Tyler common stock. During </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we purchased approximately </span><span style="font-family:inherit;font-size:10pt;">72,000</span><span style="font-family:inherit;font-size:10pt;"> shares of our common stock for an aggregate purchase price of </span><span style="font-family:inherit;font-size:10pt;">$14.3 million</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A summary of the repurchase activity during </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> is as follows:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:85.37037037037038%;border-collapse:collapse;text-align:left;"><tr><td colspan="14"></td></tr><tr><td style="width:47%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total number of shares repurchased</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Additional number of shares authorized that may be repurchased</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average price paid per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maximum number of shares that may be repurchased under current authorization</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Three months ended March 31</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">71,793</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,500,000</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">199.03</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Three months ended June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Three months ended September 30</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">October 1 through October 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">November 1 through November 30</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December 1 through December 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,620,925</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">71,793</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,500,000</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">199.03</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In February 2019, our board of directors authorized the repurchase of an additional </span><span style="font-family:inherit;font-size:10pt;">1.5 million</span><span style="font-family:inherit;font-size:10pt;"> of Tyler common stock. The repurchase program, which was approved by our board of directors, was announced in October 2002 and was amended at various times from 2003 through 2019. There is no expiration date specified for the authorization, and we intend to repurchase stock under the program from time to time.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, we had remaining authorization to repurchase up to </span><span style="font-family:inherit;font-size:10pt;">2.6 million</span><span style="font-family:inherit;font-size:10pt;"> additional shares of our common stock. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">18</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Performance Graph</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">The following Performance Graph and related information shall not be deemed &#8220;soliciting material&#8221; or to be &#8220;filed&#8221; with the Securities and Exchange Commission, nor shall such information be incorporated by reference into any future filing under the Securities Act of 1933 or Securities Exchange Act of 1934, each as amended, except to the extent that we specifically incorporate it by reference into such filing.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table compares total shareholder returns for Tyler over the last five years to the Standard and Poor&#8217;s 500 Stock Index and the Standard and Poor&#8217;s 600 Information Technology Index assuming a $100 investment made on </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2014</span><span style="font-family:inherit;font-size:10pt;">. Each of the three measures of cumulative total return assumes reinvestment of dividends. The stock performance shown on the graph below is not necessarily indicative of future price performance.</span></div><div style="line-height:120%;padding-top:16px;text-align:center;"><img src="chart-0712ce3e0aa05243830.jpg" alt="chart-0712ce3e0aa05243830.jpg" style="height:466px;width:682px;"></img></div><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="18"></td></tr><tr><td style="width:41%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Company / Index</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/14</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/15</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/16</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/17</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/18</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/19</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tyler Technologies, Inc.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">159.28</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">130.46</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">161.78</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">169.79</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">274.14</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">S&amp;P 500 Stock Index</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">101.38</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">113.51</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">138.29</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">132.23</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">173.86</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">S&amp;P 600 Information Technology Index</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">104.65</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">140.08</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">154.48</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">140.68</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">196.38</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">19</span></div></div><hr style="page-break-after:always"></hr><div><a id="s924135EBA02151B79E01480848849B0B"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 6.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SELECTED FINANCIAL DATA.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="20"></td></tr><tr><td style="width:51%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="19" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">FOR THE YEARS ENDED DECEMBER 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019 (a)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017 (b),(c)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2016 (b)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2015</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">STATEMENT OF OPERATIONS DATA:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,086,427</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">935,282</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">840,899</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">759,880</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">591,022</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost and expenses:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of revenues</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">569,527</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">495,704</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">441,522</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">400,692</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">313,835</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">257,746</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">207,605</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">175,914</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">165,176</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">133,317</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Research and development expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">81,342</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">63,264</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47,324</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">43,154</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">29,922</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,445</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16,217</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13,381</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13,202</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5,905</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">156,367</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">152,492</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">162,758</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">137,656</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">108,043</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income, net</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,471</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,378</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">698</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(1,998</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">381</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">159,838</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">155,870</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">163,456</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">135,658</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">108,424</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax (benefit) provision (c)</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13,311</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8,408</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(6,115</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,957</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">43,555</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">146,527</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">147,462</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">169,571</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">113,701</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">64,869</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net earnings per diluted share</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.65</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.68</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4.32</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.92</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.77</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average diluted shares</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">40,105</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">40,123</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">39,246</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">38,961</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">36,552</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">STATEMENT OF CASH FLOWS DATA:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows provided by operating activities </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">254,720</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">250,203</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">195,755</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">191,859</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">134,327</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows used by investing activities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(245,015</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(238,255</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(85,395</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(50,720</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(398,459</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows (used) provided by financing activities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">88,698</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(63,595</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">39,415</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">138,075</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">91,052</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">BALANCE SHEET DATA:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,191,614</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,790,963</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,611,351</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,378,502</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,356,570</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revolving line of credit</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">10,000</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">66,000</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shareholders' equity</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,617,058</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,324,846</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,191,736</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">934,540</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">858,857</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(a)  Reflects the impact of the adoption of Accounting Standards Update ("ASU") ASU No. 2016-02, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Leases</span><span style="font-family:inherit;font-size:10pt;"> ("Topic 842") in fiscal year 2019. Refer to Note - 1 "Summary of Significant Accounting Policies" for further discussion.</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(b) Reflects the impact of the adoption of ASU No. 2014-09,&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Revenue from Contracts with Customers</span><span style="font-family:inherit;font-size:10pt;"> in fiscal year 2018. </span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(c) 2017 includes the significant impact of the enactment of the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;("Tax Act"). The most significant impact of the Tax Act to us is the reduction in the U.S. federal corporate income tax rate from 35% to 21%.&#160;The impact of the rate reduction on our 2017 income tax provision is a </span><span style="font-family:inherit;font-size:10pt;">$26.0 million</span><span style="font-family:inherit;font-size:10pt;"> tax benefit due to the remeasurement of deferred tax assets and liabilities. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">20</span></div></div><hr style="page-break-after:always"></hr><div><a id="sE6DB24F27AD15D209DB411C576A02394"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 7.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS.</span></div></td></tr></table><div><a id="s9C1F4C9267FB51168B249124621A5068"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FORWARD-LOOKING STATEMENTS</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">This document contains &#8220;forward-looking statements&#8221; within the meaning of Section&#160;27A of the Securities Act of 1933 and Section&#160;21E of the Securities Exchange Act of 1934 that are not historical in nature and typically address future or anticipated events, trends, expectations or beliefs with respect to our financial condition, results of operations or business. Forward-looking statements often contain words such as &#8220;believes,&#8221; &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;foresees,&#8221; &#8220;forecasts,&#8221; &#8220;estimates,&#8221; &#8220;plans,&#8221; &#8220;intends,&#8221; &#8220;continues,&#8221; &#8220;may,&#8221; &#8220;will,&#8221; &#8220;should,&#8221; &#8220;projects,&#8221; &#8220;might,&#8221; &#8220;could&#8221; or other similar words or phrases. Similarly, statements that describe our business strategy, outlook, objectives, plans, intentions or goals also are forward-looking statements.&#160;We believe there is a reasonable basis for our forward-looking statements, but they are inherently subject to risks and uncertainties and actual results could differ materially from the expectations and beliefs reflected in the forward-looking statements. We presently consider the following to be among the important factors that could cause actual results to differ materially from our expectations and beliefs: (1)&#160;changes in the budgets or regulatory environments of our clients, primarily local and state governments, that could negatively impact information technology spending; (2)&#160;our ability to protect client information from security breaches and provide uninterrupted operations of data centers; (3)&#160;our ability to achieve growth or operational synergies through the integration of acquired businesses, while avoiding unanticipated costs and disruptions to existing operations; (4)&#160;material portions of our business require the Internet infrastructure to be adequately maintained; (5)&#160;our ability to achieve our financial forecasts due to various factors, including project delays by our clients, reductions in transaction size, fewer transactions, delays in delivery of new products or releases or a decline in our renewal rates for service agreements; (6)&#160;general economic, political and market conditions; (7)&#160;technological and market risks associated with the development of new products or services or of new versions of existing or acquired products or services; (8)&#160;competition in the industry in which we conduct business and the impact of competition on pricing, client retention and pressure for new products or services; (9)&#160;the ability to attract and retain qualified personnel and dealing with the loss or retirement of key members of management or other key personnel; and (10)&#160;costs of compliance and any failure to comply with government and stock exchange regulations. A detailed discussion of these factors and other risks that affect our business are described in Item&#160;1A, &#8220;Risk Factors.&#8221; We expressly disclaim any obligation to publicly update or revise our forward-looking statements.</span></div><div><a id="sE8E6674BD713584CB93823AF61E31097"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">OVERVIEW</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">General</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide integrated information management solutions and services for the public sector, with a focus on local governments. We develop and market a broad line of software products and services to address the IT needs of cities, counties, schools and other local government entities. In addition, we provide professional IT services to our clients, including software and hardware installation, data conversion, training and for certain clients, product modifications, along with continuing maintenance and support for clients using our systems. We also provide subscription-based services such as software as a service (&#8220;SaaS&#8221;), which primarily utilize the Tyler private cloud, and electronic document filing solutions (&#8220;e-filing&#8221;), which simplify the filing and management of court related documents. Revenues for e-filing are derived from transaction fees and, in some cases, fixed fee arrangements. Other transaction based fees primary relate to online payment services. We also provide property appraisal outsourcing services for taxing jurisdictions.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our products generally automate eight major functional areas: (1)&#160;financial management and education, (2)&#160;courts and justice,&#160;(3) public safety, (4)&#160;property appraisal and tax, (5) planning, regulatory and maintenance, (6) land and vital records management, (7) data and insights and (8) case management and business process management.&#160;We report our results in two segments. The Enterprise Software ("ES") segment provides public sector entities with software systems and services to meet their information technology and automation needs for mission-critical &#8220;back-office&#8221; functions such as: financial management and education, courts and justice, public safety, planning, regulatory and maintenance, land and vital records management, data and insights and case management and business management processes. The Appraisal and Tax (&#8220;A&amp;T&#8221;) segment provides systems and software that automate the appraisal and assessment of real and personal property as well as property appraisal outsourcing services for local governments and taxing authorities. Property appraisal outsourcing services include: the physical inspection of commercial and residential properties; data collection and processing; computer analysis for property valuation; preparation of tax rolls; community education; and arbitration between taxpayers and the assessing jurisdiction.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">21</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our total employee count increased to </span><span style="font-family:inherit;font-size:10pt;">5,368</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, from </span><span style="font-family:inherit;font-size:10pt;">4,525</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the </span><span style="font-family:inherit;font-size:10pt;">twelve months ended</span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, total revenues increased </span><span style="font-family:inherit;font-size:10pt;">16%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year.&#160;Excluding the impact of acquisitions, total revenues increased </span><span style="font-family:inherit;font-size:10pt;">8%</span><span style="font-family:inherit;font-size:10pt;"> compared to prior year.  Revenues from acquisitions contributed </span><span style="font-family:inherit;font-size:10pt;">8%</span><span style="font-family:inherit;font-size:10pt;"> of growth for the </span><span style="font-family:inherit;font-size:10pt;">twelve months ended</span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscriptions revenue grew </span><span style="font-family:inherit;font-size:10pt;">34%</span><span style="font-family:inherit;font-size:10pt;"> for the </span><span style="font-family:inherit;font-size:10pt;">twelve months ended</span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, due to a gradual shift toward cloud-based, software as a service business, as well as continued strong growth in our e-filing revenues from courts and other transaction-based revenues. Excluding the impact of acquisitions, subscriptions revenue increased </span><span style="font-family:inherit;font-size:10pt;">26%</span><span style="font-family:inherit;font-size:10pt;"> for the </span><span style="font-family:inherit;font-size:10pt;">twelve months ended</span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our backlog at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;">$1.46 billion</span><span style="font-family:inherit;font-size:10pt;">, a </span><span style="font-family:inherit;font-size:10pt;">17%</span><span style="font-family:inherit;font-size:10pt;"> increase from last year. </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recent Acquisitions</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October&#160;30, 2019, we acquired certain assets of Courthouse Technologies, Ltd ("CHT"), an industry-leading provider of jury management systems that offers a fully integrated, end-to-end software-as-a-service (SaaS) solution to manage all facets of juror management, from source list generation to juror processing and payment. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;">$20.5 million</span><span style="font-family:inherit;font-size:10pt;"> of which </span><span style="font-family:inherit;font-size:10pt;">$19.1 million</span><span style="font-family:inherit;font-size:10pt;"> was paid in cash and approximately </span><span style="font-family:inherit;font-size:10pt;">$1.4 million</span><span style="font-family:inherit;font-size:10pt;"> was accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 28, 2019, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">MP Holdings Parent, Inc. dba MicroPact</span><span style="font-family:inherit;font-size:10pt;"> ("MicroPact"), a leading provider of commercial off-the-shelf ("COTS") solutions, including entellitrak&#174;, a low-code application development platform for case management and business process management used extensively in the public sector. The total purchase price, net of cash acquired of </span><span style="font-family:inherit;font-size:10pt;">$2.0 million</span><span style="font-family:inherit;font-size:10pt;">, was approximately </span><span style="font-family:inherit;font-size:10pt;">$202.2 million</span><span style="font-family:inherit;font-size:10pt;"> consisting of </span><span style="font-family:inherit;font-size:10pt;">$198.2 million</span><span style="font-family:inherit;font-size:10pt;">&#160;paid in cash and accrued contingent consideration of </span><span style="font-family:inherit;font-size:10pt;">$6.0 million</span><span style="font-family:inherit;font-size:10pt;">, subject to the achievement of certain financial performance objectives.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 1, 2019, we acquired all the assets of Civic, LLC ("MyCivic"), a company that provides software solutions to connect communities. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;">$3.7 million</span><span style="font-family:inherit;font-size:10pt;"> in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocations for MicroPact and MyCivic are complete. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocation for CHT is not yet complete, therefore the preliminary valuation estimates of fair value assumed at the acquisition date including intangible assets, receivables and deferred revenue are subject to change as the valuation is finalized. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. Revenues from MicroPact included in Tyler's results of operations totaled approximately </span><span style="font-family:inherit;font-size:10pt;">$63.0 million</span><span style="font-family:inherit;font-size:10pt;"> and the net loss was approximately </span><span style="font-family:inherit;font-size:10pt;">$98,000</span><span style="font-family:inherit;font-size:10pt;"> for the </span><span style="font-family:inherit;font-size:10pt;">twelve months ended</span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. The impact of the MyCivic and CHT acquisitions, individually and in the aggregate, on our operating results, assets and liabilities is not material.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our balance sheet as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, reflects the allocation of the purchase price to the assets acquired based on their fair value at the date of each acquisition. The fair value of the assets and liabilities acquired are based on valuations using Level III, unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We monitor and analyze several key performance indicators in order to manage our business and evaluate our financial and operating performance. These indicators include the following:</span></div><div style="line-height:120%;padding-left:4px;padding-top:16px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenues &#8211; We derive our revenues from five primary sources: sale of software licenses and royalties; subscription-based arrangements; software services; maintenance; and appraisal services. Subscriptions and maintenance are considered recurring revenue sources and comprised approximately </span><span style="font-family:inherit;font-size:10pt;">67%</span><span style="font-family:inherit;font-size:10pt;"> of our revenue in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. The number of new SaaS clients and the number of existing clients who convert from our traditional software arrangements to our SaaS model are a significant driver to our business, together with new software license sales and maintenance rate increases. In addition, we also monitor our customer base and churn as we historically have experienced very low customer turnover. During </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, based on our number of customers, turnover was approximately </span><span style="font-family:inherit;font-size:10pt;">2%</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-left:4px;padding-top:8px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cost of Revenues and Gross Margins &#8211; Our primary cost component is personnel expenses in connection with providing software implementation, subscription-based services, maintenance and support, and appraisal services to our clients. We can improve gross margins by controlling headcount and related costs and by expanding our revenue base, especially from those products and services that produce incremental revenue with minimal incremental cost, such as software licenses and royalties, subscription-based services, and maintenance and support. Our appraisal projects are cyclical in nature, and we often employ appraisal personnel on a short-term basis to coincide with the life of a project. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our total employee count increased to </span><span style="font-family:inherit;font-size:10pt;">5,368</span><span style="font-family:inherit;font-size:10pt;"> from </span><span style="font-family:inherit;font-size:10pt;">4,525</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">22</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Selling, General and Administrative (&#8220;SG&amp;A&#8221;) Expenses &#8211; The primary components of SG&amp;A expenses are administrative and sales personnel salaries and commissions, share-based compensation expense, marketing expense, rent and professional fees. Sales commissions typically fluctuate with revenues and share-based compensation expense generally increases as the market price of our stock increases. Other administrative expenses tend to grow at a slower rate than revenues. </span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Liquidity and Cash Flows &#8211; The primary driver of our cash flows is net income. Uses of cash include acquisitions, capital investments in property and equipment and discretionary purchases of treasury stock. Our working capital needs are fairly stable throughout the year with the significant components of cash outflows being payment of personnel expenses offset by cash inflows representing collection of accounts receivable and cash receipts from clients in advance of revenue being earned. In recent years, we have also received significant amounts of cash from employees exercising stock options and contributing to our Employee Stock Purchase Plan.</span></div><div style="line-height:120%;padding-left:4px;padding-top:16px;padding-left:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Balance Sheet &#8211; Cash, accounts receivable and days sales outstanding and deferred revenue balances are important indicators of our business.</span></div><div style="line-height:120%;padding-left:4px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Adoption of New Lease Accounting Standard</span></div><div style="line-height:120%;padding-left:4px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We adopted Topic 842 using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of lease arrangements. The impact of adoption is reflected in the financial information herein. For additional details, see Note 1 - Summary of Significant Accounting Policies" to our consolidated financial statements in this report.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of right-of-use ("ROU") assets and lease liabilities for operating leases, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and currently do not have any.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recent Accounting Guidance not yet Adopted</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU 2016-13,&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Financial Instruments -&#160;Credit&#160;Losses,</span><span style="font-family:inherit;font-size:10pt;">&#160;(&#8220;ASU 2016-13&#8221;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#8217;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020 and believe the impact on our consolidated financial statements and results of operations will not be material.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Outlook</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The local government software market continues to be active, and our backlog at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> reached </span><span style="font-family:inherit;font-size:10pt;">$1.46 billion</span><span style="font-family:inherit;font-size:10pt;">, a </span><span style="font-family:inherit;font-size:10pt;">17%</span><span style="font-family:inherit;font-size:10pt;"> increase from last year. We expect to continue to achieve solid growth in revenue and earnings. With our strong financial position and cash flow, we plan to continue to make significant investments in product development to better position us to continue to expand our addressable market and strengthen our competitive position in the public sector software market over the long term.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">23</span></div></div><hr style="page-break-after:always"></hr><div><a id="sCEF9D6A413B15223A1BC69C3BEFDEB9B"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CRITICAL ACCOUNTING POLICIES AND ESTIMATES</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our discussion and analysis of financial condition and results of operations is based upon our financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;). The preparation of these financial statements requires us to make estimates and judgments that affect the reported amounts of assets and liabilities at the date of the financial statements, the reported amounts of revenues, cost of revenues and expenses during the reporting period, and related disclosure of contingencies. The Notes to the Financial Statements included as part of this Annual Report describe our significant accounting policies used in the preparation of the financial statements. Significant items subject to such estimates and assumptions include the application of the progress toward completion methods of revenue recognition, estimated standalone selling price ("SSP") for distinct performance obligations, the carrying amount and estimated useful lives of intangible assets, determination of share-based compensation expense and valuation allowance for receivables. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates under different assumptions or conditions.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe the following critical accounting policies require significant judgments and estimates used in the preparation of our financial statements.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Revenue Recognition. </span><span style="font-family:inherit;font-size:10pt;">We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#8220;PCS&#8221; or &#8220;maintenance&#8221;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the contract, or contracts, with a customer</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Determination of the transaction price</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Allocation of the transaction price to the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recognition of revenue when, or as, we satisfy a performance obligation</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether the customer can benefit from the services either on their own or together with other resources readily available to the customer and whether the services are separately identifiable from other promises in the contract.  Many of our software arrangements involve &#8220;off-the-shelf&#8221; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#8217;s purpose upon installation, and remaining services such as training are not considered highly interdependent or highly interrelated to the product's functionality. </span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.  When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material or milestones basis.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">24</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based services consist of revenues derived from SaaS arrangements, which primarily utilize the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#8217;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements ratably over the term of the arrangement, which range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">ten</span><span style="font-family:inherit;font-size:10pt;"> but are typically for a period of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">five years</span><span style="font-family:inherit;font-size:10pt;">. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.</span><span style="font-family:inherit;font-size:8pt;"> </span><span style="font-family:inherit;font-size:10pt;">We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Typically, the structure of our arrangements does not give rise to variable consideration. However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate that the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products. The allowance for doubtful accounts reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with certain of our contracts, we have recorded retentions receivable or unbilled receivables consisting of costs and estimated profit in excess of billings as of the balance sheet date. Many of the contracts which give rise to unbilled receivables at a given balance sheet date are subject to billings in the subsequent accounting period. We review unbilled receivables and related contract provisions to ensure we are justified in recognizing revenue prior to billing the customer and that we have objective evidence which allows us to recognize such revenue. In addition, we have a sizable amount of deferred revenue, which represents billings in excess of revenue earned. The majority of this liability consists of maintenance billings for which payments are made in advance and the revenue is ratably earned over the maintenance period, generally one year. We also have deferred revenue for those contracts in which we receive a deposit and the conditions in which to record revenue for the service or product have not been met. On a periodic basis, we review by customer the detail components of our deferred revenue to ensure our accounting remains appropriate.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Intangible Assets and Goodwill</span><span style="font-family:inherit;font-size:10pt;">. Our business acquisitions typically result in the creation of goodwill and other intangible asset balances, and these balances affect the amount and timing of future period amortization expense, as well as expense we could possibly incur as a result of an impairment charge. The cost of acquired companies is allocated to identifiable tangible and intangible assets based on estimated fair value, with the excess allocated to goodwill. Accordingly, we have a significant balance of acquisition date intangible assets, including software, customer related intangibles, trade name, leases and goodwill. These intangible assets (other than goodwill) are amortized over their estimated useful lives. We currently have no intangible assets with indefinite lives other than goodwill.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">25</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. When testing goodwill for impairment quantitatively, we first compare the fair value of each reporting unit with its carrying amount. If the carrying amount of a reporting unit exceeds its fair value, a second step is performed to measure the amount of potential impairment. In the second step, we compare the implied fair value of reporting unit goodwill with the carrying amount of the reporting unit&#8217;s goodwill. If the carrying amount of reporting unit goodwill exceeds the implied fair value of that goodwill, an impairment loss is recognized. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We base our fair value estimates on assumptions we believe to be reasonable but that are unpredictable and inherently uncertain. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, did not result in an impairment charge. During </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we did not identify any triggering events that would require an update to our annual impairment review.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">All intangible assets (other than goodwill) are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of other intangible assets is measured by comparison of the carrying amount to estimated undiscounted future cash flows. The assessment of recoverability or of the estimated useful life for amortization purposes will be affected if the timing or the amount of estimated future operating cash flows is not achieved. Such indicators may include, among others: a significant decline in expected future cash flows; a sustained, significant decline in stock price and market capitalization; a significant adverse change in legal factors or in the business climate; unanticipated competition; and reductions in growth rates. In addition, products, capabilities, or technologies developed by others may render our software products obsolete or non-competitive. Any adverse change in these factors could have a significant impact on the recoverability of goodwill or other intangible assets.  During </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we did not identify any triggering events that would indicate that the carrying amount of our intangible assets may not be recoverable.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Share-Based Compensation. </span><span style="font-family:inherit;font-size:10pt;">We have a stock incentive plan that provides for the grant of stock options, restricted stock units and performance stock units to key employees, directors and non-employee consultants. We estimate the fair value of share-based awards on the date of grant. Share-based compensation expense includes the estimated effects of forfeitures, which will be adjusted over the requisite service period to the extent actual forfeitures differ or are expected to differ from such estimates. Changes in estimated forfeitures are recognized in the period of change and will also impact the amount of expense to be recognized in future periods. Forfeiture rate assumptions are derived from historical data. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We estimate stock price volatility at the date of grant based on the historical volatility of our common stock.&#160;Estimated option life is determined using the weighted-average period the stock options are expected to be outstanding based primarily on the options&#8217; vesting terms, remaining contractual life and the employees&#8217; expected exercise based on historical patterns. Determining the appropriate fair-value model and calculating the fair value of share-based awards at the grant date requires considerable judgment, including estimating stock price volatility, expected option life and forfeiture rates.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">26</span></div></div><hr style="page-break-after:always"></hr><div><a id="s023DCD6439015E34ADB7C6FC777A4299"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ANALYSIS OF RESULTS OF OPERATIONS AND OTHER</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following discussion compares the historical results of operations on a basis consistent with GAAP for the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"></td></tr><tr><td style="width:65%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Percentage of Total Revenues</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9.2</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">10.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">10.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">27.3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">23.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">19.6</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20.5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21.5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">39.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">41.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">42.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.2</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.3</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.0</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.5</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100.0</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100.0</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100.0</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating expenses:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of software licenses, royalties and</span></div><div style="text-align:left;padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.2</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.0</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of software services, maintenance</span></div><div style="text-align:left;padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">and subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">46.2</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">46.9</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">46.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.4</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">23.7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">22.2</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Research and development expense</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6.8</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name</span></div><div style="padding-left:12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">intangibles</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2.0</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.7</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.6</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating income</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14.4</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16.3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">19.4</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income, net</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.3</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.4</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">19.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax (benefit) provision</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.2</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.9</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(0.7</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13.5</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15.8</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20.2</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> Compared to </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Revenues</span></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 28, 2019, we acquired all of the capital stock of MicroPact, a leading provider of COTS solutions, including entellitrak&#174;, a low-code application development platform for case management and business process management used extensively in the public sector. The following table details revenue for MicroPact for the period presented as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, which is included in our consolidated statements of income from the date of acquisition:</span></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:44.67680608365019%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:61%;"></td><td style="width:2%;"></td><td style="width:1%;"></td><td style="width:35%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Software licenses and royalties</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8,737</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Subscriptions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,472</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Software services</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">18,143</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Maintenance</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">28,642</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Appraisal services</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;Hardware and other</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Total revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">63,018</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">27</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October&#160;30, 2019, we acquired certain assets of CHT, an industry-leading provider of jury management systems that offers a fully integrated, end-to-end SaaS solution to manage all facets of juror management, from source list generation to juror processing and payment. On February 1, 2019, we acquired all the assets of MyCivic, a company that provides software solutions to connect communities. The impact of the CHT and MyCivic acquisitions on our operating results is not considered material, individually and in the aggregate, and is not included in the table above.&#160;The results of the MicroPact, CHT and MyCivic acquisitions are included with the operating results of the ES segment from their dates of acquisition. For comparative purposes, we have provided explanations for changes in operations to exclude results of operations for these acquisitions noting the exclusion. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software licenses and royalties.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our software licenses and royalties revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">92,567</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">83,735</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8,832</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">11</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,638</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9,706</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(2,068</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(21</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total software licenses and royalties revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">100,205</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">93,441</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6,764</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Excluding the impact of acquisitions, software licenses and royalties revenue decreased </span><span style="font-family:inherit;font-size:10pt;">2%</span><span style="font-family:inherit;font-size:10pt;"> compared to prior year. The decline was primarily due to a shift in the mix of new software contracts toward more subscription agreements compared to the prior year. Our total new contract value mix in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, was approximately </span><span style="font-family:inherit;font-size:10pt;">37%</span><span style="font-family:inherit;font-size:10pt;"> perpetual software license arrangements and approximately </span><span style="font-family:inherit;font-size:10pt;">63%</span><span style="font-family:inherit;font-size:10pt;"> subscription-based arrangements compared to total new contract value mix in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, of approximately </span><span style="font-family:inherit;font-size:10pt;">59%</span><span style="font-family:inherit;font-size:10pt;"> perpetual software license arrangements and approximately </span><span style="font-family:inherit;font-size:10pt;">41%</span><span style="font-family:inherit;font-size:10pt;"> subscription-based arrangements. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Although the mix of new contracts between subscription-based and perpetual license arrangements may vary from quarter to quarter and year to year, we expect our longer-term software license growth rate to be negatively impacted by a growing number of customers choosing our subscription-based options, rather than purchasing the software under a traditional perpetual software license arrangement. Subscription-based arrangements result in lower software license revenue in the initial year as compared to perpetual software license arrangements but generate higher overall revenue over the term of the contract. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Subscriptions.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our subscriptions revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">285,092</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">210,740</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">74,352</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">35</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">11,260</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9,807</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,453</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total subscriptions revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">296,352</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">220,547</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">75,805</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based revenue primarily consists of revenue derived from our SaaS arrangements, which generally utilize the Tyler private cloud. As part of our subscription-based services, we also provide electronic document filing solutions (&#8220;e-filing&#8221;) that simplify the filing and management of court related documents for courts and law offices. E-filing revenue is derived from transaction fees and fixed fee arrangements.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Excluding the results of acquisitions, subscription-based revenue increased </span><span style="font-family:inherit;font-size:10pt;">26%</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">. &#160;New SaaS clients as well as existing clients who converted to our SaaS model provided the majority of the subscription revenue increase.&#160;In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we added </span><span style="font-family:inherit;font-size:10pt;">596</span><span style="font-family:inherit;font-size:10pt;"> new SaaS clients and </span><span style="font-family:inherit;font-size:10pt;">78</span><span style="font-family:inherit;font-size:10pt;"> existing clients elected to convert to our SaaS model. Also, e-filing services contributed approximately $</span><span style="font-family:inherit;font-size:10pt;">7.0 million</span><span style="font-family:inherit;font-size:10pt;"> of the subscription revenue increase in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">.&#160;The increase in e-filing revenue is attributed to new e-filing clients, as well as increased volumes as the result of several existing clients mandating e-filing. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">28</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software services.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our software services revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">185,892</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">166,921</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">18,971</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">11</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">27,169</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24,348</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,821</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total software services revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">213,061</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">191,269</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,792</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">11</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software services revenue primarily consists of professional services billed in connection with implementing our software, converting client data, training client personnel, custom development activities and consulting. New clients who purchase our proprietary software licenses or subscriptions generally also contract with us to provide for the related software services. Existing clients also periodically purchase additional training, consulting and minor programming services. Excluding the results of acquisitions, software services revenue grew </span><span style="font-family:inherit;font-size:10pt;">0.4%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year period. The slight increase is due to higher new contract volume and the addition of professional services staff to grow our capacity to deliver backlog. Excluding employees added with acquisitions, our implementation and support staff has grown by </span><span style="font-family:inherit;font-size:10pt;">232</span><span style="font-family:inherit;font-size:10pt;"> employees since </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Maintenance.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our maintenance revenue for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">405,063</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">359,904</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">45,159</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,255</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24,617</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">638</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total maintenance revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">430,318</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">384,521</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">45,797</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide maintenance and support services for our software products and certain third-party software. Excluding the results of acquisitions, maintenance revenue grew </span><span style="font-family:inherit;font-size:10pt;">4%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year. Maintenance and support revenue increased mainly due to growth in our installed customer base from new software license sales as well as annual maintenance rate increases, partially offset by clients converting from on-premises license arrangements to SaaS.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Appraisal services.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our appraisal services revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">23,479</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,846</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,633</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total appraisal services revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">23,479</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,846</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,633</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, appraisal services revenue increased </span><span style="font-family:inherit;font-size:10pt;">7%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year primarily due to the addition of several new revaluation contracts started during the second quarter of 2019. The appraisal services business is somewhat cyclical and driven in part by statutory revaluation cycles in various states.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">29</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Cost of Revenues and Gross Margins</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of the key components of our cost of revenues for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in&#160;thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,938</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,802</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">136</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">30,642</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">22,972</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,670</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">33</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">502,138</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">438,923</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">63,215</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15,337</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14,299</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,038</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">17,472</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15,708</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,764</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">11</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total cost of revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">569,527</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">495,704</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">73,823</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of gross margin percentage by revenue type for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"></td></tr><tr><td style="width:64%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross margin percentage</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses, royalties and acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">65.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">71.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(5.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">46.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">44.9</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34.7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34.5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.2</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">33.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(9.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Overall gross margin</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47.6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software licenses, royalties and acquired software</span><span style="font-family:inherit;font-size:10pt;">. Cost of software licenses, royalties and acquired software is primarily comprised of amortization expense for acquired software and third-party software costs. We do not have any direct costs associated with royalties. The gross margin decrease of </span><span style="font-family:inherit;font-size:10pt;">5.8%</span><span style="font-family:inherit;font-size:10pt;">&#160;is due to an increase in amortization expense for acquired software resulting from acquisitions completed in the last half of 2018 and in 2019.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software services, maintenance and subscriptions</span><span style="font-family:inherit;font-size:10pt;">.&#160;Cost of software services, maintenance and subscriptions primarily consists of personnel costs related to installation of our software, conversion of client data, training client personnel and support activities and various other services such as custom client development and on-going operation of SaaS and e-filing arrangements. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, the software services, maintenance and subscriptions gross margin increased </span><span style="font-family:inherit;font-size:10pt;">1.7%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year. Excluding employees added through acquisitions, our implementation and support staff has grown by </span><span style="font-family:inherit;font-size:10pt;">232</span><span style="font-family:inherit;font-size:10pt;"> employees since December 31, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> as we accelerated hiring to ensure that we are well-positioned to deliver our current backlog and anticipated new business. Costs related to maintenance and various other services such as SaaS and e-filing typically grow at a slower rate than related revenue due to leverage in the utilization of support and maintenance staff and economies of scale.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Appraisal services</span><span style="font-family:inherit;font-size:10pt;">. Appraisal services revenue comprised approximately </span><span style="font-family:inherit;font-size:10pt;">2.2%</span><span style="font-family:inherit;font-size:10pt;"> of total revenue. The appraisal services gross margin increased&#160;</span><span style="font-family:inherit;font-size:10pt;">0.2%</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> due to ramp up of several new revaluation projects during second quarter 2019.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> blended gross margin slightly increased </span><span style="font-family:inherit;font-size:10pt;">0.6%</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">.&#160;Our overall gross margin increase is attributed to a higher revenue mix for subscription revenues compared to the prior year period resulting in an increase in incremental margin related to software services, maintenance and subscriptions. Costs related to maintenance and various other services such as SaaS and e-filing typically grow at a slower rate than related revenue due to leverage in the utilization of support and maintenance staff and economies of scale.&#160;The increase in overall margins are partially offset by lower margins from software licenses, in part due to lower software license revenue and higher amortization expense for acquired software resulting from acquisitions.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">30</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Selling, General and Administrative Expenses</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Selling, general and administrative (&#8220;SG&amp;A&#8221;) expenses consist primarily of salaries, employee benefits, travel, share-based compensation expense, commissions and related overhead costs for administrative and sales and marketing employees, as well as, professional fees, trade show activities, advertising costs and other marketing related costs. The following table sets forth a comparison of our SG&amp;A expenses for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">257,746</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">207,605</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">50,141</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SG&amp;A as a percentage of revenue was </span><span style="font-family:inherit;font-size:10pt;">23.7%</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">22.2%</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">. SG&amp;A expense increased approximately </span><span style="font-family:inherit;font-size:10pt;">24%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year period. &#160;In 2019, our operating results include $19.9 million of SG&amp;A expenses for MicroPact from the date of acquisition. The remaining SG&amp;A expense increase is mainly due to compensation cost related to increased staff levels, higher stock compensation expense and increased commission expense as a result of higher sales.&#160;Excluding employees added with acquisitions, we added </span><span style="font-family:inherit;font-size:10pt;">81</span><span style="font-family:inherit;font-size:10pt;"> employees mainly to our sales and finance teams since </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. In addition, our </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> stock compensation expense rose </span><span style="font-family:inherit;font-size:10pt;">$5.8 million</span><span style="font-family:inherit;font-size:10pt;">, mainly due to increases in our stock price over recent years. &#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Research and Development Expense</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expense consists primarily of salaries, employee benefits and related overhead costs associated with new product development. The following table sets forth a comparison of our research and development expense for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Research and development expense</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">81,342</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">63,264</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">18,078</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">29</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expense increased </span><span style="font-family:inherit;font-size:10pt;">29%</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year period, mainly due to a number of new Tyler product development initiatives across our product suites, including increased investments in research and development at recently acquired businesses. To support these initiatives, our research and development staff has grown by </span><span style="font-family:Times New Roman;font-size:10pt;color:#000000;">153</span><span style="font-family:inherit;font-size:10pt;"> since </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Amortization of Customer and Trade Name Intangibles</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Acquisition intangibles are comprised of the excess of the purchase price over the fair value of net tangible assets acquired that is allocated to acquired software, leases and customer and trade name intangibles. The remaining excess purchase price is allocated to goodwill that is not subject to amortization. Amortization expense related to acquired software is included with cost of revenues, while amortization expense of customer and trade name intangibles is recorded as operating expense. The estimated useful lives of both customer and trade name intangibles range from five to 25 years. The following table sets forth a comparison of amortization of customer and trade name intangibles for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,445</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16,217</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5,228</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">32</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-bottom:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization of customer and trade name intangibles increased due to the impact of intangibles added with several acquisitions completed in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">31</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense relating to customer and trade name acquisition intangibles, excluding acquired software for which the amortization expense is recorded as cost of revenues, for the next five years and thereafter is as follows (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03422053231939%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:80%;"></td><td style="width:1%;"></td><td style="width:18%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,357</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,237</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20,747</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20,673</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">20,121</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">135,264</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization expense relating to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be </span><span style="font-family:inherit;font-size:10pt;">$525,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$525,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2021</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$525,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2022</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$525,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2023</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$525,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2024</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$512,000</span><span style="font-family:inherit;font-size:10pt;"> thereafter</span><span style="font-family:inherit;font-size:9pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Other</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of other income, net for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="15"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="5" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income, net</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,471</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,378</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">93</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other income is comprised of interest income from invested cash net of interest expense and non-usage and other fees associated with our revolving credit agreement. Other income, net, increased compared to the prior period due to increased interest income from higher levels of cash and investments resulting from cash generated in the current year offset by increased interest expense from new debt outstanding during the current year under our credit agreement. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Income Tax Provision</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our income tax provision for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax provision </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13,311</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8,408</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4,903</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">58</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Effective income tax rate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8.3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5.4</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The increase in the income tax provision and the effective income tax rate in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year is primarily due to lower excess tax benefits from stock option exercises in 2019.  Stock option exercise activity in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> generated excess tax benefits of </span><span style="font-family:inherit;font-size:10pt;">$29.8 million</span><span style="font-family:inherit;font-size:10pt;">, while stock option exercise activity in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> generated </span><span style="font-family:inherit;font-size:10pt;">$32.5 million</span><span style="font-family:inherit;font-size:10pt;"> excess tax benefits.  In addition, the 2018 income tax provision contains a tax benefit of  </span><span style="font-family:inherit;font-size:10pt;">$1.8 million</span><span style="font-family:inherit;font-size:10pt;"> resulting from the remeasurement of deferred tax assets and liabilities associated with the enactment of the 2017 Tax Act which reduced the statutory U.S. federal corporate income tax rate from 35% to 21%.  Excluding the impact of the excess tax benefits and the Tax Act, our income tax provision and effective tax rate in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> would have been </span><span style="font-family:inherit;font-size:10pt;">$43.1 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">27.0%</span><span style="font-family:inherit;font-size:10pt;"> and in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, would have been </span><span style="font-family:inherit;font-size:10pt;">$42.6 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">27.4%</span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The effective income tax rates in both </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> differed from the United States federal statutory corporate income tax rate of 21% due to state income taxes, the research tax credit, non-deductible share-based compensation expense, disqualifying incentive stock option dispositions, and other non-deductible business expenses.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">32</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> Compared to </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Revenues</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software licenses and royalties.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our software licenses and royalties revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">83,735</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">78,388</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5,347</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9,706</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,854</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,852</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total software licenses and royalties revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">93,441</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">86,242</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,199</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software license and royalties revenue increased </span><span style="font-family:inherit;font-size:10pt;">8%</span><span style="font-family:inherit;font-size:10pt;"> compared to the prior year. The majority of this growth was due to an active marketplace as the result of generally positive local government economic conditions, as well as our increasingly strong competitive position, which we attribute in part to our investment in product development in recent years. An increase in the number of larger contracts related to our planning, regulatory and maintenance solutions and public safety solutions also contributed to the growth in license revenue.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Although the mix of new contracts between subscription-based and perpetual license arrangements may vary from quarter to quarter and year to year, we expect our longer-term software license growth rate to be negatively impacted by a growing number of customers choosing our subscription-based options, rather than purchasing the software under a traditional perpetual software license arrangement. Subscription-based arrangements result in lower software license revenue in the initial year as compared to perpetual software license arrangements but generate higher overall revenue over the term of the contract. Our new client mix in&#160;2018&#160;was approximately&#160;47%&#160;selecting perpetual software license arrangements and approximately&#160;53%&#160;selecting subscription-based arrangements compared to a client mix in&#160;2017&#160;of approximately&#160;53%&#160;selecting perpetual software license arrangements and approximately&#160;47%&#160;selecting subscription-based arrangements.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Subscriptions.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our subscriptions revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">210,740</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">164,317</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">46,423</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">28</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">9,807</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,859</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,948</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total subscriptions revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">220,547</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">172,176</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">48,371</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">28</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based revenue primarily consists of revenue derived from our SaaS arrangements, which generally utilize the Tyler private cloud. As part of our subscription-based services, we also provide electronic document filing solutions (&#8220;e-filing&#8221;) that simplify the filing and management of court related documents for courts and law offices. E-filing revenue is derived from transaction fees and fixed fee arrangements. Excluding the results of acquisitions, subscription-based revenue increased&#160;21%&#160;compared to&#160;2017. </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">New SaaS clients as well as existing clients who converted to our SaaS model provided the majority of the subscription revenue increase.&#160;In&#160;2018, we added&#160;410&#160;new SaaS clients and&#160;97&#160;existing clients elected to convert to our SaaS model. Also, e-filing services contributed approximately $6.2 million&#160;of the subscription revenue increase in&#160;2018.&#160;The increase in e-filing revenue is attributed to new e-filing clients, as well as increased volumes as the result of several existing clients mandating e-filing. The acquisition of Socrata, which primarily has a subscription revenue model, also contributed to the increase in subscription revenues.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">33</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software services.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our software services revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">166,921</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">161,245</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5,676</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24,348</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">19,215</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5,133</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">27</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total software services revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">191,269</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">180,460</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">10,809</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software services revenue primarily consists of professional services billed in connection with implementing our software, converting client data, training client personnel, custom development activities and consulting. New clients who purchase our proprietary software licenses generally also contract with us to provide for the related software services. Existing clients also periodically purchase additional training, consulting and minor programming services. Excluding the results of acquisitions, software services revenue grew&#160;3%&#160;compared to the prior year period. This growth is due to a higher level of new software sales, through both our license and subscription models.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Maintenance.&#160;&#160;</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our maintenance revenue for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">359,904</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">337,701</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">22,203</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">24,617</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,618</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,999</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total maintenance revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">384,521</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">359,319</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,202</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide maintenance and support services for our software products and certain third-party software. Maintenance revenue grew&#160;</span><span style="font-family:inherit;font-size:10pt;color:#000000;">7%</span><span style="font-family:inherit;font-size:10pt;">&#160;compared to the prior year. Maintenance and support revenue increased mainly due to growth in our installed customer base from new software license sales as well as annual maintenance rate increases. &#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Appraisal services.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our appraisal services revenue for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ES</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">A&amp;T</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,846</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,023</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(3,177</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(13</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total appraisal services revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,846</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,023</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(3,177</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(13</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In&#160;2018, appraisal services revenue decreased&#160;</span><span style="font-family:inherit;font-size:10pt;color:#000000;">13%</span><span style="font-family:inherit;font-size:10pt;">&#160;compared to the prior year primarily due to the successful completion of several large revaluation projects in mid-2017. The appraisal services business is somewhat cyclical and driven in part by statutory revaluation cycles in various states.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">34</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Cost of Revenues and Gross Margins</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of the key components of our cost of revenues for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in&#160;thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,802</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,321</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">481</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">22,972</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21,686</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">1,286</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">438,923</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">387,634</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">51,289</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14,299</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16,286</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(1,987</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(12</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15,708</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12,595</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,113</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total cost of revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">495,704</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">441,522</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">54,182</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of gross margin percentage by revenue type for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:16px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"></td></tr><tr><td style="width:64%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross margin percentage</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses, royalties and acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">71.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">71.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">0.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">44.9</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">45.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(0.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34.5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(0.4</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">33.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">28.8</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4.8</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Overall gross margin</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(0.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)%</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software licenses, royalties and acquired software</span><span style="font-family:inherit;font-size:10pt;">. Cost of software licenses, royalties and acquired software is primarily comprised of amortization expense for acquired software and third-party software costs. We do not have any direct costs associated with royalties. The gross margin increase of&#160;</span><span style="font-family:inherit;font-size:10pt;">0.3%</span><span style="font-family:inherit;font-size:10pt;">&#160;is due to higher software license revenues offset by an increase in amortization expense for acquired software attributed to new acquisitions completed in 2018.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software services, maintenance and subscriptions</span><span style="font-family:inherit;font-size:10pt;">. Cost of software services, maintenance and subscriptions primarily consists of personnel costs related to installation of our software, conversion of client data, training client personnel and support activities and various other services such as custom client development and on-going operation of SaaS and e-filing arrangements. In&#160;2018, the software services, maintenance and subscriptions gross margin decreased&#160;0.7%&#160;compared to the prior year. Excluding employees added through acquisitions, our implementation and support staff grew by&#160;57&#160;employees in 2018&#160;as we accelerated hiring to ensure that we are well-positioned to deliver our current backlog and anticipated new business. Recognition of acquisition-related deferred revenue associated with subscriptions and maintenance also resulted in lower gross margins.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Appraisal services</span><span style="font-family:inherit;font-size:10pt;">. Appraisal services revenue comprised approximately&#160;2.3%&#160;of total revenue. The appraisal services gross margin decreased&#160;0.4%&#160;compared to&#160;2017&#160;due to the reduction in higher margin projects substantially complete by early 2017 and lower volume of revenues in the current period to cover relatively fixed costs.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our&#160;2018&#160;blended gross margin slightly decreased by&#160;0.5%&#160;compared to&#160;2017.&#160;Our overall gross margin decrease is mainly attributed to additions to our implementation staff and lower margin revenues from appraisal services, offset by improved margin on revenues from software licenses.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Selling, General and Administrative Expenses</span></div><div style="line-height:120%;padding-bottom:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of selling, general and administrative expenses for the years ended December&#160;31:</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">207,605</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">175,914</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">31,691</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">18</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SG&amp;A as a percentage of revenue was&#160;22.2%&#160;in&#160;2018&#160;compared to&#160;20.9%&#160;in&#160;2017. SG&amp;A expense increased approximately&#160;18%&#160;compared to the prior year period. &#160;In 2018, our operating results include $9.1 million of SG&amp;A expenses for Socrata from the date of acquisition. The remaining SG&amp;A expense increase is mainly due to compensation cost related to increased staff levels, higher stock compensation expense and increased commission expense as a result of higher sales.&#160;Excluding </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">35</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">employees added with acquisitions, we added&#160;47&#160;employees mainly to our sales and finance teams since in 2018. In addition, our&#160;2018&#160;stock compensation expense rose&#160;$11.2 million, mainly due to increases in our stock price over the last few years. &#160;</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Research and Development Expense</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our research and development expense for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Research and development expense</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">63,264</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">47,324</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">15,940</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">34</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expense increased&#160;34%&#160;in&#160;2018&#160;compared to the prior year period, mainly due to a number of new Tyler product development initiatives across our product suites, including increased investments in research and development at recently acquired businesses. To support these initiatives, our research and development staff grew by&#160;159&#160;in 2018.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Amortization of Customer and Trade Name Intangibles</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of amortization of customer and trade name intangibles for the years ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">16,217</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">13,381</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,836</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">21</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization of customer and trade name intangibles increased due to the impact of intangibles added with several acquisitions completed in&#160;2017&#160;and&#160;2018.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Other</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of other income, net for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income, net</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,378</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">698</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,680</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">384</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other income is comprised of interest income from invested cash net of interest expense and non-usage and other fees associated with our revolving credit agreement. Other income, net, increased compared to the prior period due to increased interest income from significantly higher levels of cash and investments resulting from cash generated in the last year. We had no debt in 2018, as we repaid all borrowings under the revolving line of credit in January 2017.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;text-decoration:underline;">Income Tax Provision (Benefit)</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a comparison of our income tax provision for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Change</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax provision (benefit)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">8,408</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(6,115</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">14,523</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(237</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Effective income tax rate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5.4</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(3.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The increase in the income tax provision in&#160;2018&#160;is primarily due to the one-time tax benefit of&#160;$26.0 million recognized in the fourth quarter of&#160;2017&#160;resulting from the remeasurement of deferred tax assets and liabilities associated with the enactment of the Tax Act which reduced the statutory U.S. federal corporate income tax rate from 35% to 21%. The increase is somewhat offset by the decrease in statutory U.S. federal corporate income tax rate for&#160;2018. In addition, excess tax benefits from stock option exercises were lower in 2018 as compared to the prior period. Stock option exercise activity in&#160;2018&#160;generated excess tax benefits of&#160;$32.5 million, while stock option exercise activity in&#160;2017&#160;generated&#160;$40.6 million&#160;excess tax benefits.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">36</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The increase in the effective income tax rate in&#160;2018&#160;compared to&#160;2017&#160;is also primarily attributable to the one-time tax benefit associated with the Tax Act recognized in 2017 and the decrease in excess tax benefits related to stock option exercises realized, offset by the decrease in statutory U.S. federal corporate income tax rate for&#160;2018.&#160;Excluding the impact of the Tax Act and the excess tax benefits, our income tax provision and effective tax rate in&#160;2018&#160;would have been&#160;$42.6 million&#160;and&#160;27.4%&#160;and in&#160;2017, would have been&#160;$60.5 million and&#160;37.0%, respectively.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The effective income tax rates in both&#160;2018&#160;and&#160;2017&#160;differed from the statutory United States federal corporate income tax rate of 21% and 35%, respectively, due to state income taxes, the research tax credit, non-deductible share-based compensation expense, disqualifying incentive stock option dispositions, and other non-deductible business expenses, and in&#160;2017, the domestic production activities deduction.</span></div><div><a id="sC077B4BE6347516AB1D907A0A9D97780"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;-sec-extract:summary;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FINANCIAL CONDITION AND LIQUIDITY</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had cash and cash equivalents of </span><span style="font-family:inherit;font-size:10pt;">$232.7 million</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">$134.3 million</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. We also had </span><span style="font-family:inherit;font-size:10pt;">$81.6 million</span><span style="font-family:inherit;font-size:10pt;"> invested in investment grade corporate bonds, municipal bonds and asset-backed securities as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">$97.7 million</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. These investments mature between </span><span style="font-family:inherit;font-size:10pt;">2020 through 2023</span><span style="font-family:inherit;font-size:10pt;"> and we intend to hold these investments until maturity.&#160;Cash and cash equivalents consist of cash on deposit with several domestic banks and money market funds.&#160;As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;">no</span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings and no outstanding letters of credit.&#160;We believe our revolving line of credit, cash from operating activities, cash on hand and access to the credit markets provide us with sufficient flexibility to meet our long-term financial needs.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth a summary of cash flows for the years ended December 31:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:64%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">($ in thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows provided (used) by:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating activities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">254,720</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">250,203</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">195,755</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Investing activities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(245,015</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(238,255</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(85,395</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financing activities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">88,698</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(63,595</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">39,415</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net increase (decrease) in cash and cash equivalents</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">98,403</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(51,647</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">149,775</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash provided by operating activities continues to be our primary source of funds to finance operating needs and capital expenditures. Other potential capital resources include cash on hand, public and private issuances of debt or equity securities, and bank borrowings. It is possible that our ability to access the capital and credit markets in the future may be limited by economic conditions or other factors. We currently believe that cash provided by operating activities, cash on hand and available credit are sufficient to fund our working capital requirements, capital expenditures, income tax obligations, and share repurchases for at least the next twelve months.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, operating activities provided cash of </span><span style="font-family:inherit;font-size:10pt;">$254.7 million</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">$250.2 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">. Operating activities that provided cash were primarily comprised of net income of </span><span style="font-family:inherit;font-size:10pt;">$146.5 million</span><span style="font-family:inherit;font-size:10pt;">, non-cash depreciation and amortization charges of </span><span style="font-family:inherit;font-size:10pt;">$76.7 million</span><span style="font-family:inherit;font-size:10pt;"> and non-cash share-based compensation expense of </span><span style="font-family:inherit;font-size:10pt;">$60.0 million</span><span style="font-family:inherit;font-size:10pt;">. Working capital, excluding cash, increased approximately&#160;</span><span style="font-family:inherit;font-size:10pt;">$35.5 million</span><span style="font-family:inherit;font-size:10pt;"> due to higher accounts receivable resulting from an increase in unbilled receivables attributed to revenues recognized prior to billings, higher accounts receivable related to&#160;annual maintenance and subscription billings, timing of income tax payments, and the deferred taxes associated with stock option activity during the period. These increases were offset by the growth in deferred revenue balances and timing of payments of payroll related taxes and vendor invoices.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In general, changes in the balance of deferred revenue are cyclical and primarily driven by the timing of our maintenance and subscription billings. Our renewal dates occur throughout the year, but our largest maintenance renewal cycles occur in the second and fourth quarters. </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Days sales outstanding in accounts receivable were </span><span style="font-family:inherit;font-size:10pt;">117</span><span style="font-family:inherit;font-size:10pt;"> days at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, compared to </span><span style="font-family:inherit;font-size:10pt;">111</span><span style="font-family:inherit;font-size:10pt;"> days at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. The increase in our DSO is mainly due to an increase in unbilled receivables attributed to the increase in software license revenue for which we have recognized revenue at the point in time when the software is made available to the customer, but the billing has not yet been submitted to the customer. An increase in software services contracts accounted for using progress-to-completion method of revenue recognition in which the services are performed in one accounting period, but the billing normally occurs subsequently in another accounting period also contributed to the increase in DSO. Furthermore, our maintenance billing cycle typically peaks at its highest level in June and second highest level in December of each year and is followed by collections in the subsequent quarter. DSO is calculated based on quarter-end accounts receivable (excluding long-term receivables but including unbilled receivables) divided by the quotient of annualized quarterly revenues divided by 360 days.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">37</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Investing activities used cash of </span><span style="font-family:inherit;font-size:10pt;">$245.0 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> compared to </span><span style="font-family:inherit;font-size:10pt;">$238.3 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">.&#160;We invested </span><span style="font-family:inherit;font-size:10pt;">$54.7 million</span><span style="font-family:inherit;font-size:10pt;"> and received </span><span style="font-family:inherit;font-size:10pt;">$70.8 million</span><span style="font-family:inherit;font-size:10pt;"> in proceeds from investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from </span><span style="font-family:inherit;font-size:10pt;">2020 through 2023</span><span style="font-family:inherit;font-size:10pt;">. On February 28, 2019, we acquired all of the capital stock of MicroPact. The total purchase price, net of cash acquired of </span><span style="font-family:inherit;font-size:10pt;">$2.0 million</span><span style="font-family:inherit;font-size:10pt;">, was approximately </span><span style="font-family:inherit;font-size:10pt;">$202.2 million</span><span style="font-family:inherit;font-size:10pt;">, including </span><span style="font-family:inherit;font-size:10pt;">$198.2 million</span><span style="font-family:inherit;font-size:10pt;">&#160;paid in cash and accrued contingent consideration of </span><span style="font-family:inherit;font-size:10pt;">$6.0 million</span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. On February 1, 2019, we acquired all the assets of MyCivic for the total purchase price of </span><span style="font-family:inherit;font-size:10pt;">$3.7 million</span><span style="font-family:inherit;font-size:10pt;"> paid in cash. On October&#160;30, 2019, we acquired certain assets of CHT. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;">$20.5 million</span><span style="font-family:inherit;font-size:10pt;"> of which </span><span style="font-family:inherit;font-size:10pt;">$19.1 million</span><span style="font-family:inherit;font-size:10pt;"> was paid in cash and approximately </span><span style="font-family:inherit;font-size:10pt;">$1.4 million</span><span style="font-family:inherit;font-size:10pt;"> accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments. Approximately </span><span style="font-family:inherit;font-size:10pt;">$37.2 million</span><span style="font-family:inherit;font-size:10pt;"> was invested in property and equipment, including </span><span style="font-family:inherit;font-size:10pt;">$20.8 million</span><span style="font-family:inherit;font-size:10pt;"> related to real estate. In addition, approximately </span><span style="font-family:inherit;font-size:10pt;">$4.8 million</span><span style="font-family:inherit;font-size:10pt;"> of software development was capitalized in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. The remaining additions were for computer equipment and furniture and fixtures in support of internal growth, particularly with respect to data centers supporting growth in our cloud-based offerings. These expenditures were funded from cash generated from operations.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In 2018, we invested&#160;$115.6 million&#160;and received&#160;$81.2 million&#160;in proceeds from investment grade corporate bonds, municipal bonds and asset-backed securities.&#160;Approximately&#160;$27.4 million&#160;was invested in property and equipment, primarily for computer equipment, furniture and fixtures in support of internal growth, particularly with respect to our cloud-based offerings. We paid&#160;$2.2 million&#160;for the expansion of existing buildings. On December 7, 2018, we acquired certain assets and intellectual property of&#160;SceneDoc, Inc., a company that provides mobile-first, SaaS field reporting for law enforcement agencies. The total purchase price was approximately&#160;$6.2 million in cash. On October 1, 2018, we acquired all of the equity interests of MobileEyes, a company that develops software to improve public safety by supporting fire prevention and suppression, emergency response, and structural safety. The total purchase price was approximately&#160;$5.3 million&#160;in cash. On August 31, 2018, we acquired all of the assets of CaseloadPRO, a company that provides a fully featured probation case management system. The purchase price of&#160;$9.3 million&#160;was paid in cash. On April 30, 2018, we acquired all of the capital stock of Socrata, a company that provides open data and data-as-a-service solutions including cloud-based data integration, visualization, analysis, and reporting solutions for state and local government agencies. &#160;The purchase price, net of cash acquired of&#160;$1.7 million, was&#160;$147.6 million&#160;paid in cash. On April 30, 2018, we acquired all of the equity interests of Sage, a cybersecurity company offering a suite of services that supports an entire cybersecurity lifecycle, including program development, education and training, technical testing, advisory services, and digital forensics. The total purchase price was&#160;$11.6 million&#160;paid in cash. These expenditures were funded from cash generated from operations.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financing activities provided cash of </span><span style="font-family:inherit;font-size:10pt;">$88.7 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> compared to cash used of </span><span style="font-family:inherit;font-size:10pt;">$63.6 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">.&#160;Financing activities in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> were primarily comprised of collections of </span><span style="font-family:inherit;font-size:10pt;">$106.5 million</span><span style="font-family:inherit;font-size:10pt;"> from stock option exercises and employee stock purchase plan activity.  We also purchased approximately </span><span style="font-family:inherit;font-size:10pt;">72,000</span><span style="font-family:inherit;font-size:10pt;"> shares of our common stock for an aggregate purchase price of </span><span style="font-family:inherit;font-size:10pt;">$14.3 million</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financing activities used cash of&#160;$63.6 million&#160;in&#160;2018&#160;compared to cash provided of&#160;$39.4 million&#160;in&#160;2017.&#160;Financing activities in&#160;2018&#160;were primarily comprised of collections of&#160;$83.0 million&#160;from stock option exercises and employee stock purchase plan activity. We also purchased approximately&#160;781,000&#160;shares of our common stock for an aggregate purchase price of&#160;$150.1 million, of which&#160;$3.5 million&#160;was accrued as of&#160;December&#160;31, 2018.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In February 2019, our board of directors authorized the repurchase of an additional 1.5 million shares of Tyler common stock. The repurchase program, which was approved by our board of directors, was announced in October 2002, and was amended at various times from 2003 through 2019.&#160;As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, we had remaining authorization to repurchase up to </span><span style="font-family:inherit;font-size:10pt;">2.6 million</span><span style="font-family:inherit;font-size:10pt;"> additional shares of our common stock. Our share repurchase program allows us to repurchase shares at our discretion. Market conditions influence the timing of the buybacks and the number of shares repurchased, as well as the volume of employee stock option exercises. Share repurchases are generally funded using our existing cash balances and borrowings under our credit facility and may occur through open market purchases and transactions structured through investment banking institutions, privately negotiated transactions and/or other mechanisms. There is no expiration date specified for the authorization and we intend to repurchase stock under the plan from time to time.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2019</span><span style="font-family:inherit;font-size:10pt;">, we entered into a </span><span style="font-family:inherit;font-size:10pt;">$400.0 million</span><span style="font-family:inherit;font-size:10pt;"> credit agreement (the &#8220;Credit Facility&#8221;) with the various lenders party thereto and Wells Fargo Bank, National Association, as Administrative Agent. The Credit Facility provides for an unsecured revolving credit line of up to $</span><span style="font-family:inherit;font-size:10pt;">400.0 million</span><span style="font-family:inherit;font-size:10pt;">, including a </span><span style="font-family:inherit;font-size:10pt;">$25.0 million</span><span style="font-family:inherit;font-size:10pt;"> sublimit for letters of credit. The Credit Facility matures on </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2024</span><span style="font-family:inherit;font-size:10pt;">. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases. Borrowings under the Credit Facility bear interest at a rate of either (1) Wells Fargo Bank&#8217;s&#160;prime rate (subject to certain higher rate determinations) plus a margin of </span><span style="font-family:inherit;font-size:10pt;">0.125%</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">0.75%</span><span style="font-family:inherit;font-size:10pt;"> or (2) the 30, 60, 90 or 180 day LIBOR rate plus a margin of </span><span style="font-family:inherit;font-size:10pt;">1.125%</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">1.75%</span><span style="font-family:inherit;font-size:10pt;">. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our interest rate was </span><span style="font-family:inherit;font-size:10pt;">4.88%</span><span style="font-family:inherit;font-size:10pt;"> under the prime rate option or approximately </span><span style="font-family:inherit;font-size:10pt;">2.89%</span><span style="font-family:inherit;font-size:10pt;"> under the 30-day LIBOR option. The Credit Facility is secured by substantially all of our assets. The Credit Facility requires us to maintain certain financial ratios and other financial conditions and prohibits us from making certain investments, advances, cash dividends or loans, and limits incurrence of additional indebtedness and liens. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we were in compliance with those covenants.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">38</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;">no</span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings and had unused borrowing capacity of </span><span style="font-family:inherit;font-size:10pt;">$400.0 million</span><span style="font-family:inherit;font-size:10pt;"> under the Credit Facility</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">. </span><span style="font-family:inherit;font-size:10pt;">We paid interest of </span><span style="font-family:inherit;font-size:10pt;">$1,750,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$770,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">$804,000</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid income taxes, net of refunds received, of </span><span style="font-family:inherit;font-size:10pt;">$21.3 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$6.8 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">$36.0 million</span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we experienced significant stock option exercise activity that generated net tax benefits of </span><span style="font-family:inherit;font-size:10pt;">$29.8 million</span><span style="font-family:inherit;font-size:10pt;"> and reduced tax payments accordingly. In 2018 and 2017, excess tax benefits were </span><span style="font-family:inherit;font-size:10pt;">$32.5 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$40.6 million</span><span style="font-family:inherit;font-size:10pt;">, respectively.&#160; </span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We anticipate that 2020 capital spending will be between </span><span style="font-family:inherit;font-size:10pt;">$36 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$38 million</span><span style="font-family:inherit;font-size:10pt;">, including approximately </span><span style="font-family:inherit;font-size:10pt;">$9 million</span><span style="font-family:inherit;font-size:10pt;"> related to real estate and approximately </span><span style="font-family:inherit;font-size:10pt;">$7 million</span><span style="font-family:inherit;font-size:10pt;"> of capitalized software development. We expect the majority of the other capital spending will consist of computer equipment and software for infrastructure replacements and expansion. Capital spending is expected to be funded from existing cash balances and cash flows from operations.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time we engage in discussions with potential acquisition candidates. In order to pursue such opportunities, which could require significant commitments of capital, we may be required to incur debt or to issue additional potentially dilutive securities in the future. No assurance can be given as to our future acquisition opportunities and how such opportunities will be financed. We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire from </span><span style="font-family:inherit;font-size:10pt;">one year</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">eight years</span><span style="font-family:inherit;font-size:10pt;">.&#160;Some of these leases include options to extend for up to </span><span style="font-family:inherit;font-size:10pt;">10 years</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Summarized in the table below are our obligations to make future payments under the Credit Facility and lease obligations at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">&#160;(in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="28"></td></tr><tr><td style="width:38%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revolving line of credit</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Lease obligations</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,684</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6,246</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,960</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,923</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,478</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,042</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,333</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total future payment obligations</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">7,684</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">6,246</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3,960</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,923</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,478</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2,042</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">25,333</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we do not have any off-balance sheet arrangements, guarantees to third-parties or material purchase commitments.</span></div><div><a id="s3C875ED0B8F8505799EFE0191BDCE551"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CAPITALIZATION</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our capitalization consisted of </span><span style="font-family:inherit;font-size:10pt;">no</span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings and </span><span style="font-family:inherit;font-size:10pt;">$1.6 billion</span><span style="font-family:inherit;font-size:10pt;"> of shareholders&#8217; equity.</span></div><div><a id="sD0F62C90322D591B96FBA14614F915AF"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 7A.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Market risk represents the risk of loss that may affect us due to adverse changes in financial market prices and interest rates.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, our effective average interest rate for borrowings was </span><span style="font-family:inherit;font-size:10pt;">3.84%</span><span style="font-family:inherit;font-size:10pt;">.&#160;As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our interest rate was </span><span style="font-family:inherit;font-size:10pt;">4.88%</span><span style="font-family:inherit;font-size:10pt;"> under the prime rate option or approximately </span><span style="font-family:inherit;font-size:10pt;">2.89%</span><span style="font-family:inherit;font-size:10pt;"> under the 30-day LIBOR option. Loans under the Credit Facility bear interest, at Tyler&#8217;s option, at a per annum rate of either (1) Wells Fargo Bank&#8217;s prime rate (subject to certain higher rate determinations) plus a margin of 0.125% to 0.75% or (2) the one-, two-, three-, or six-month LIBOR rate plus a margin of 1.125% to 1.75%.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;">no</span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings under the Credit Facility and therefore are not subject to any interest risk.</span></div><div><a id="s98A5246E125F54C89C717C54ABFE91A1"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 8.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The reports of our independent registered public accounting firm and our financial statements, related notes, and supplementary data are included as part of this Annual Report beginning on page F-1.</span></div><div><a id="sF77AD57C3D585BCF956C5CA908EDD72E"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 9.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">None.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">39</span></div></div><hr style="page-break-after:always"></hr><div><a id="s566EB778C6105FDF8F3BA0E5067667A7"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 9A.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONTROLS AND PROCEDURES.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Evaluation of Disclosure Controls and Procedures </span><span style="font-family:inherit;font-size:10pt;">&#8212; We maintain disclosure controls and procedures (as defined in Rule 13a-15(e) of the Securities Exchange Act) designed to provide reasonable assurance that the information required to be disclosed by us in the reports we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules and forms.&#160;These include controls and procedures designed to ensure that this information is accumulated and communicated to our management, including our chief executive officer and chief financial officer, as appropriate to allow timely decisions regarding required disclosures.&#160;Management, with the participation of the chief executive officer and chief financial officer, evaluated the effectiveness of our disclosure controls and procedures as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.&#160;Based on this evaluation, the chief executive officer and chief financial officer have concluded that our</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span><span style="font-family:inherit;font-size:10pt;">disclosure controls and procedures were effective as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Management&#8217;s Report on Internal Control Over Financial Reporting </span><span style="font-family:inherit;font-size:10pt;">&#8212; Tyler&#8217;s management is responsible for establishing and maintaining effective internal control over financial reporting as defined in Securities Exchange Act Rule 13a-15(f).&#160;Tyler&#8217;s internal control over financial reporting is designed to provide reasonable assurance to Tyler&#8217;s management and board of directors regarding the preparation and fair presentation of published financial statements.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements.&#160;Therefore, even those systems determined to be effective can provide only reasonable assurance with respect to financial statement preparation and presentation.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Management assessed the effectiveness of Tyler&#8217;s internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.&#160;In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework) (the COSO criteria). Based on our assessment, we concluded that, as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">,&#160;Tyler&#8217;s internal control over financial reporting was effective based on those criteria.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Management&#8217;s assessment of and conclusion on the effectiveness of internal control over financial reporting did not include the internal controls of MicroPact, which is included in our 2019 consolidated financial statements and constituted 11.5% of total assets as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> and 5.8% of revenues for the year then ended.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler&#8217;s internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> has been audited by Ernst&#160;&amp; Young LLP, the independent registered public accounting firm who also audited Tyler&#8217;s financial statements. Ernst&#160;&amp; Young&#8217;s attestation report on Tyler&#8217;s internal control over financial reporting appears on page F-1 hereof.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Changes in Internal Control Over Financial Reporting </span><span style="font-family:inherit;font-size:10pt;">&#8212; During the quarter ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were no changes in our internal control over financial reporting, as defined in Securities Exchange Act Rule 13a-15(f), that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></div><div><a id="s1A046954C8F25DE5B1554462CB9F5086"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">ITEM 9B.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">OTHER INFORMATION.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">None.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">40</span></div></div><hr style="page-break-after:always"></hr><div><a id="s396E1772AB4C551A8D3D42C55BBDCECF"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PART III</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See the information under the following captions in Tyler&#8217;s definitive Proxy Statement, which is incorporated herein by reference. Only those sections of the Proxy Statement that specifically address the items set forth herein are incorporated by reference.&#160;&#160;Such incorporation by reference does not include the Compensation Discussion and Analysis, the Compensation Committee Report or the Audit Committee Report, which are included in the Proxy Statement.</span></div><div><a id="sC2333A7C6DFC5C1782855F9921C87EF7"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:47%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Headings in Proxy Statement</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:22px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:22px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:22px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:0px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:72px;text-indent:-72px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ITEM&#160;10.&#160;&#160;&#160;&#160;DIRECTORS, EXECUTIVE OFFICERS, AND CORPORATE GOVERNANCE.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8220;Tyler Management&#8221; and &#8220;Corporate Governance Principles and Board Matters&#8221;</span></div></td></tr></table></div></div><div><a id="s31D4374DC6F45513A53DFEACDC3DD114"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:47%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:72px;text-indent:-72px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ITEM&#160;11.&#160;&#160;&#160;&#160;EXECUTIVE COMPENSATION.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8220;Executive Compensation&#8221;</span></div></td></tr></table></div></div><div><a id="s08AEFC92E5C75E418622E436762AD347"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:47%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:72px;text-indent:-72px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ITEM&#160;12.&#160;&#160;&#160;&#160;SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8220;Security Ownership of Certain Beneficial Owners and Management&#8221;</span></div></td></tr></table></div></div><div><a id="sC1E498A3EFD55CF6AD8B83F0072BC166"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:47%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:72px;text-indent:-72px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ITEM&#160;13.&#160;&#160;&#160;&#160;CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">"Executive Compensation" and</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8220;Certain Relationships and Related Transactions&#8221;</span></div></td></tr></table></div></div><div><a id="sEEE9F2DA753B510B943E5F4A5621921B"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:24px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:47%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-bottom:12px;padding-top:24px;text-align:left;padding-left:72px;text-indent:-72px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ITEM 14.&#160;&#160;&#160;&#160;PRINCIPAL ACCOUNTING FEES AND SERVICES.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-bottom:12px;text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">The information required under this item may be found under the section captioned &#8220;Proposals For Consideration &#8211; Proposal Two &#8211; Ratification of Our Independent Auditors for Fiscal Year 2020&#8221; in our Proxy Statement when filed.</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">41</span></div></div><hr style="page-break-after:always"></hr><div><a id="sD991F53E5FB6515A8CC70297FAAD4612"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PART IV</span></div><div><a id="s05194164D29055CA9D9D500A319C17AE"></a></div><div style="line-height:120%;padding-bottom:12px;-sec-extract:summary;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ITEM 15.&#160;&#160;&#160;&#160;EXHIBITS, FINANCIAL STATEMENT SCHEDULES.</span></div><div style="line-height:120%;padding-bottom:12px;text-indent:37px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following documents are filed as part of this Annual Report:</span></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:3%;"></td><td style="width:1%;"></td><td style="width:3%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:84%;"></td><td style="width:1%;"></td><td style="width:6%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(a)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(1</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">The financial statements are filed as part of this Annual Report.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Page</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s7DB38AA8553456E5A4D9E62213C0144F"><span style="font-family:inherit;font-size:8pt;">Reports of Independent Registered Public Accounting Firm</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s7DB38AA8553456E5A4D9E62213C0144F">F-1</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s5A0E8C2A5F8A511A86B536D298F1078B"><span style="font-family:inherit;font-size:8pt;">Consolidated Statements of Comprehensive Income for the years ended December 31, 2019, 2018 and 2017</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s5A0E8C2A5F8A511A86B536D298F1078B">F-4</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s1ECF17EEE8895E19A3183D7891524F96"><span style="font-family:inherit;font-size:8pt;">Consolidated Balance Sheets as of December 31, 2019 and 2018</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s1ECF17EEE8895E19A3183D7891524F96">F-5</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s6A78663706FC50C5A2F605419CAFA780"><span style="font-family:inherit;font-size:8pt;">Consolidated Statements of Shareholders&#8217; Equity for the years ended December 31, 2019, 2018 and 2017</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s6A78663706FC50C5A2F605419CAFA780">F-7</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sECEB9A33042450A898D7678E5B457523"><span style="font-family:inherit;font-size:8pt;">Consolidated Statements of Cash Flows for the years ended December 31, 2019, 2018 and 2017</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#sECEB9A33042450A898D7678E5B457523">F-6</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s10D664457D565EB38922339B293669BF"><span style="font-family:inherit;font-size:8pt;">Notes to Consolidated Financial Statements</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s10D664457D565EB38922339B293669BF">F-8</a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(2</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financial statement schedules:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">There are no financial statement schedules filed as part of this Annual Report, since the required information is included in the financial statements, including the notes thereto, or the circumstances requiring inclusion of such schedules are not present.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exhibits</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Certain of the exhibits to this Annual Report are hereby incorporated by reference, as specified:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:8pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:6%;"></td><td style="width:3%;"></td><td style="width:91%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exhibit</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Description</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Restated Certificate of Incorporation of Tyler Three, as amended through May 14, 1990, and Certificate of Designation of Series A Junior Participating Preferred Stock (filed as Exhibit 3.1 to our Form 10-Q for the quarter ended June 30, 1990, and incorporated by reference herein).</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3.2</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Certificate of Amendment to the Restated Certificate of Incorporation (filed as Exhibit 3.1 to our Form 8-K, dated February 19, 1998, and incorporated by reference herein).</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000156459015008522/tyl-ex33_112.htm"><span style="font-family:inherit;font-size:8pt;">3.3</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000156459015008522/tyl-ex33_112.htm"><span style="font-family:inherit;font-size:8pt;">Amended and Restated By-Laws of Tyler Corporation, dated October 20, 2015 (filed as Exhibit 3.3 to our Form 10-Q for the quarter ended September 30, 2015, and incorporated by reference herein).</span></a></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000095013401002412/d84862ex3-4.txt"><span style="font-family:inherit;font-size:8pt;">3.4</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000095013401002412/d84862ex3-4.txt"><span style="font-family:inherit;font-size:8pt;">Certificate of Amendment dated May 19, 1999 to the Restated Certificate of Incorporation (filed as Exhibit 3.4 to our Form 10-K for the year ended December 31, 2000, and incorporated by reference herein).</span></a></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">4.1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Specimen of Common Stock Certificate (filed as Exhibit 4.1 to our registration statement no. 33-33505 and incorporated by reference herein).</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312515378245/d57735dex101.htm"><span style="font-family:inherit;font-size:8pt;">4.2</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073119000039/exhibit101creditagreem.htm"><span style="font-family:inherit;font-size:8pt;">Credit Agreement dated September 30, 2019, among Tyler Technologies, Inc. and Wells Fargo Bank, N. A. as Administrative Agent and other lenders party hereto (filed as Exhibit 10.1 to our Form 8-K dated October 02, 2019, and incorporated by reference herein).&#160;</span></a></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312512282212/d371277ds8.htm"><span style="font-family:inherit;font-size:8pt;">10.1</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312512282212/d371277ds8.htm"><span style="font-family:inherit;font-size:8pt;">Employee Stock Purchase Plan (filed as Exhibit 10.1 to our registration statement 333-182318 dated June 25, 2012 and incorporated by reference herein).</span></a></div><div style="-sec-extract:summary;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex103.htm"><span style="font-family:inherit;font-size:8pt;">10.2</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a101exhibit2018execemplagm.htm"><span style="font-family:inherit;font-size:8pt;">Employment and Non-Competition Agreement between Tyler Technologies, Inc. and John S. Marr Jr. effective February 26, 2018 (filed as Exhibit 10.1 to our Form 8-K dated March 9, 2018 and incorporated by reference herein).</span></a></div><div style="-sec-extract:summary;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">42</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;-sec-extract:summary;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:99.62962962962963%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:91%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exhibit</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Description</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex105.htm"><span style="font-family:inherit;font-size:8pt;">10.3</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a103exhibit2018execemplagm.htm"><span style="font-family:inherit;font-size:8pt;">Employment and Non-Competition Agreement between Tyler Technologies, Inc. and Brian K. Miller effective February 26, 2018 (filed as Exhibit 10.3 to our Form 8-K dated March 9, 2018 and incorporated by reference herein).</span></a></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">.</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000119312513067262/d487966dex106.htm"><span style="font-family:inherit;font-size:8pt;">10.4</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000013/a102exhibit2018execemplagm.htm"><span style="font-family:inherit;font-size:8pt;">Employment and Non-Competition Agreement between Tyler Technologies, Inc. and H. Lynn Moore, Jr effective February 26, 2018 (filed as Exhibit 10.2 to our Form 8-K dated March 9, 2018 and incorporated by reference herein).</span></a></div><div style="-sec-extract:summary;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="font-family:inherit;font-size:8pt;" href="#s08A784510D5A5D3CB764C712B16B3FB7"><span style="font-family:inherit;font-size:8pt;">10.5</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073119000009/plan_ofxmergermicropactexh.htm"><span style="font-family:inherit;font-size:8pt;">Agreement and plan of merger by and among Tyler Technologies, Inc. TMP Subsidiary, Inc., MP Holding Parent, Inc. (filed as Exhibit 10.7 to our Form 10-K dated February 20, 2019 and incorporated by reference herein).</span></a></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000016/tylproxy2018.htm#sb3775a337bee452f876ac4e4a6e1c03e"><span style="font-family:inherit;font-size:8pt;">10.6</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-top:4px;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/860731/000086073118000016/tylproxy2018.htm#sb3775a337bee452f876ac4e4a6e1c03e"><span style="font-family:inherit;font-size:8pt;">Tyler Technologies, Inc. 2018 Stock Option Plan effective as of May 9, 2018 (filed as Appendix A to the registrant's Proxy Statement filed with the Commission on March 28, 2018 and incorporated by reference herein).</span></a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit-23.htm"><span style="font-family:inherit;font-size:8pt;">&#160;*23</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:6pt;"><span style="font-family:inherit;font-size:6pt;">&#160;</span></div><div style="text-align:left;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit-23.htm"><span style="font-family:inherit;font-size:8pt;">Consent of Independent Registered Public Accounting Firm.</span></a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit311.htm"><span style="font-family:inherit;font-size:8pt;">&#160;*31.1</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:6pt;"><span style="font-family:inherit;font-size:6pt;">&#160;</span></div><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit311.htm"><span style="font-family:inherit;font-size:8pt;">Rule 13a-14(a) Certification by Principal Executive Officer.</span></a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:6pt;"><span style="font-family:inherit;font-size:6pt;">&#160;</span></div><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit312.htm"><span style="font-family:inherit;font-size:8pt;">*31.2</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit312.htm"><span style="font-family:inherit;font-size:8pt;">&#160;Rule 13a-14(a) Certification by Principal Financial Officer.</span></a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:6pt;"><span style="font-family:inherit;font-size:6pt;">&#160;</span></div><div style="text-align:center;font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit321.htm"><span style="font-family:inherit;font-size:8pt;">*32</span></a></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:6pt;"><span style="font-family:inherit;font-size:6pt;">&#160;</span></div><div style="font-size:8pt;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="tyl12312019exhibit321.htm"><span style="font-family:inherit;font-size:8pt;">Section 1350 Certification of Principal Executive Officer and Principal Financial Officer.</span></a></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.INS</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Instance Document - the Instance Document does not appear in the interactive data file because its XBRL tags, including Cover Page XBRL tags, are embedded within the Inline XBRL Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.SCH</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Taxonomy Extension Schema Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.CAL</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Taxonomy Extension Calculation Linkbase Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.LAB</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Extenstion Labels Linkbase Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.DEF</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Taxonomy Extension Definition Linkbase Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*101.PRE</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Inline XBRL Taxonomy Extension Presentation Linkbase Document.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">104</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:8pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98.88888888888889%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">*</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212; Filed herewith.</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A copy of each exhibit may be obtained at a price of 15 cents per page, with a $10.00 minimum order, by writing Investor Relations, 5101 Tennyson Parkway, Plano, Texas, 75024.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">43</span></div></div><hr style="page-break-after:always"></hr><div><a id="sC81EB64D13FC54068976A8651175226E"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SIGNATURES</span></div><div style="line-height:120%;padding-top:8px;text-indent:37px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pursuant to the requirements of Section&#160;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, thereunto duly authorized.</span></div><div style="line-height:120%;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:90%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:40%;"></td><td style="width:3%;"></td><td style="width:5%;"></td><td style="width:3%;"></td><td style="width:49%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">TYLER TECHNOLOGIES, INC.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ H. Lynn Moore, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">H. Lynn Moore, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">President and Chief Executive Officer</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(principal executive officer)</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:16px;text-indent:37px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, the following persons on behalf of the registrant and in the capacities and on the dates indicated have signed this report below.</span></div><div style="line-height:120%;text-indent:37px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:90%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:40%;"></td><td style="width:3%;"></td><td style="width:5%;"></td><td style="width:3%;"></td><td style="width:49%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ John S. Marr, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">John S. Marr, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Executive Chairman of the Board</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ H. Lynn Moore, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">H. Lynn Moore, Jr.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">President and Chief Executive Officer</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(principal executive officer)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Brian K. Miller</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Brian K. Miller</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Executive Vice President and Chief Financial Officer</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(principal financial officer)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ W. Michael Smith</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">W. Michael Smith</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Chief Accounting Officer</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(principal accounting officer)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Donald R. Brattain</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Donald R. Brattain</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Glenn A. Carter</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Glenn A. Carter</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Brenda A. Cline</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Brenda A. Cline</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:90%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:40%;"></td><td style="width:3%;"></td><td style="width:5%;"></td><td style="width:3%;"></td><td style="width:49%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ J. Luther King</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">J. Luther King</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Daniel M. Pope</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Daniel M. Pope</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:13px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Date: February&#160;19, 2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">/s/ Dustin R.Womble</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dustin R. Womble</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Director</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">44</span></div></div><hr style="page-break-after:always"></hr><div><a id="s7DB38AA8553456E5A4D9E62213C0144F"></a></div><div></div><div><br/></div><div style="line-height:174%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Report of Independent Registered Public Accounting Firm</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">To the Shareholders and the Board of Directors of Tyler Technologies, Inc.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Opinion on the Financial Statements</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">We have audited the accompanying consolidated balance sheets of Tyler Technologies, Inc. (the Company) as of </span><span style="font-family:inherit;font-size:10pt;color:#333333;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;color:#333333;"> and </span><span style="font-family:inherit;font-size:10pt;color:#333333;">2018</span><span style="font-family:inherit;font-size:10pt;color:#333333;">, the related consolidated statements of comprehensive income, shareholders&#8217; equity and cash flows for each of the three years in the period ended </span><span style="font-family:inherit;font-size:10pt;color:#333333;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;color:#333333;">, and the related notes (collectively referred to as the &#8220;consolidated financial statements&#8221;). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company at </span><span style="font-family:inherit;font-size:10pt;color:#333333;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;color:#333333;"> and </span><span style="font-family:inherit;font-size:10pt;color:#333333;">2018</span><span style="font-family:inherit;font-size:10pt;color:#333333;">, and the results of its operations and its cash flows for each of the three years in the period ended </span><span style="font-family:inherit;font-size:10pt;color:#333333;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;color:#333333;">, in conformity with U.S. generally accepted accounting principles.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company's internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;color:#333333;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;color:#333333;">, based on criteria established in Internal Control-Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework) and our report dated </span><span style="font-family:inherit;font-size:10pt;color:#333333;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;color:#333333;"> expressed an unqualified opinion thereon.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Basis for Opinion</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">These financial statements are the responsibility of the Company'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 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.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">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. 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.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Critical Audit Matters</span><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;"><sup style="vertical-align:top;line-height:120%;font-size:7pt"> </sup>&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">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 consolidated</span><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;"><sup style="vertical-align:top;line-height:120%;font-size:7pt"> </sup></span><span style="font-family:inherit;font-size:10pt;color:#333333;">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.</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:86.66666666666667%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:17%;"></td><td style="width:83%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Estimation of hours for certain progress-to-completion (POC) arrangements</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">Description of</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">the Matter</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">As described in Note 1"Summary of Significant Accounting Policies" to the consolidated financial statements under "Revenue Recognition," many of the Company&#8217;s software arrangements involve "off-the-shelf" software.  For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, the Company recognizes revenue over time based on a measurement of progress-to-completion (POC). The Company measures POC primarily using labor hours incurred, believing it best depicts the pattern of transfer of control to the customer, which occurs as the Company incurs costs on its contracts. Estimates of budgeted total hours for these arrangements requires management judgment.  </span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">Auditing management&#8217;s estimates of total budgeted contract hours required additional audit effort due to the existence of management judgment required to make these estimates for arrangements that are completed over an extended period.  These estimates require ongoing monitoring by management and may require revision over time. </span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-1</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:86.66666666666667%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:17%;"></td><td style="width:83%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">How We Addressed the Matter in Our Audit</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">We obtained an understanding, evaluated the design, and tested the operating effectiveness of controls over the Company&#8217;s process to review contract progress-to-date and total budgeted hours, inclusive of executed contract amendments and change orders.</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">To test the appropriateness of management&#8217;s assessment of contract progress-to-date, our audit procedures included, among others, obtaining an understanding of any increase or decrease to budgeted hours via contract amendments or change orders, observing quarterly POC meetings where the Company discussed contract progress-to-date and evaluated the appropriateness of contract estimated hours to complete, reviewing signed Company attestations as to the contracts&#8217; progress toward completion, performing a sensitivity analysis to assess the impact of changes to the budgeted hours on the amount of revenue recognized, and performing an analysis of completed contracts to compare actual hours incurred upon completion to the original budget.</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-weight:bold;">Accounting for the acquisition of MP Holdings Parent, Inc.</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">Description of</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">the Matter</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">As described in Note 2 "Acquisitions" to the consolidated financial statements, the Company completed three acquisitions during 2019 for net consideration of $226.5 million. The most significant of these was the acquisition of MP Holdings Parent, Inc. (MicroPact) for net consideration of $202.2 million. The transactions were accounted for as business combinations.</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">&#160;&#160;</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">Auditing the Company&#8217;s accounting for the MicroPact acquisition was more complex due to the significant estimations used by management in determining the fair values of assets acquired and liabilities assumed, in particular the fair values of identified intangible assets of $136.1 million, the most significant of which consisted of customer relationships and developed technology, both of which utilize prospective financial information. The Company valued customer relationships using the multi-period excess earnings model. The significant assumptions used in this model included the attrition rate, weighted average cost of capital and existing customer growth. The Company valued the developed technology using the relief-from-royalty method. The significant assumptions used in this method included the obsolescence rate and weighted average cost of capital. The significant assumptions used in the valuation of the intangible assets are forward-looking and could be affected by future economic and market conditions.</span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;font-style:italic;">How We Addressed the Matter in Our Audit</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">We obtained an understanding, evaluated the design, and tested the operating effectiveness of the Company&#8217;s controls over its accounting for the MicroPact acquisition. For example, we tested controls over the recognition and measurement of consideration transferred, as well as management&#8217;s review of the valuation methods and significant underlying assumptions for each identified intangible asset. </span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#333333;">To test the estimated fair values of the acquired customer relationships and developed technology, we performed audit procedures that included, among others, evaluating the Company&#8217;s selection of the valuation methodology, evaluating the significant assumptions used in the Company&#8217;s valuation calculations and evaluating the completeness and accuracy of the underlying data supporting the significant assumptions. We involved our valuation specialists to assist with our evaluation of the methodology used by the Company and significant assumptions included in the fair value estimates. Additionally, we performed sensitivity analyses and compared significant assumptions to forecasts, the assumptions used to value similar assets in other acquisitions and to historical financial results of both the Company and the acquiree, among other procedures. We also evaluated the Company&#8217;s acquisition and related purchase accounting disclosures included in Note 2 "Acquisitions".</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/ ERNST&#160;&amp; YOUNG LLP</span></div><div style="line-height:120%;padding-top:4px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have served as the Company&#8217;s auditor since 1966.</span></div><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Dallas, Texas</span></div><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-2</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">To the Shareholders and the Board of Directors of Tyler Technologies, Inc.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Opinion on Internal Control over Financial Reporting </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have audited Tyler Technologies, Inc.&#8217;s internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, based on criteria established in Internal Control-Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework) (the COSO criteria). In our opinion, Tyler Technologies, Inc. (the Company) maintained, in all material respects, effective internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, based on the COSO criteria.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As indicated in the accompanying Management&#8217;s Report on Internal Control Over Financial Reporting, management&#8217;s assessment of and conclusion on the effectiveness of internal control over financial reporting did not include the internal controls of MP Holdings Parent, Inc. (MicroPact), which is included in the 2019 consolidated financial statements of the Company and constituted 11.5% of total assets as of December 31, 2019 and 5.8% of total revenue for the year then ended. Our audit of internal control over financial reporting of the Company also did not include an evaluation of the internal control over financial reporting of MicroPact.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), consolidated balance sheets of the Company as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, the related consolidated statements of comprehensive income, shareholders&#8217; equity and cash flows for each of the three years in the period ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and the related notes and our report dated </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span><span style="font-family:inherit;font-size:10pt;">expressed an unqualified opinion thereon. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Basis for Opinion </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting included in the accompanying Management&#8217;s Report on Internal Control Over Financial Reporting. Our responsibility is to express an opinion on the Company&#8217;s internal control over financial reporting based on our audit. We are a public accounting firm registered with the 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.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial reporting was maintained in all material respects.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, testing and evaluating the design and operating effectiveness of internal control based on the assessed risk, and performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Definition and Limitations of Internal Control Over Financial Reporting </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A company&#8217;s internal control over financial reporting is a process designed 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. A company&#8217;s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company&#8217;s assets that could have a material effect on the financial statements. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">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. </span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/ ERNST&#160;&amp; YOUNG LLP</span></div><div style="line-height:120%;padding-bottom:4px;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Dallas, Texas</span></div><div style="line-height:120%;padding-bottom:4px;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-3</span></div></div><hr style="page-break-after:always"></hr><div><a id="s5A0E8C2A5F8A511A86B536D298F1078B"></a></div><div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Comprehensive Income</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the years ended December&#160;31</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(In thousands, except per share amounts)</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e740-wk-Fact-E56FA557169E9FF13F65A8A4145C55A6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100,205</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e759-wk-Fact-FC526AB86C5AD218B9D9A8A41458D6F3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">93,441</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e778-wk-Fact-B58A88984BC3DD8A8884A8A41478C2B0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">86,242</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e794-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">296,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e813-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">220,547</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e832-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,176</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e853-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">213,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e872-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e891-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">180,460</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e912-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">430,318</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e931-wk-Fact-76F25FED2DABCB1C31E1A8A414705457" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">384,521</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e950-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e971-wk-Fact-0E5534002B43682C9563A8A4144C2123" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,479</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e990-wk-Fact-CD0030531C7695000F44A8A413FA941D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1009-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,023</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1030-wk-Fact-F2ADE67C5C61DE8CF087A8A41450BC9A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,012</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1049-wk-Fact-B1EB65257A76BD031A77A8A41402B795" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,658</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1068-wk-Fact-894E1C2079EDB6068C09A8A413EEC339" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,679</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:76px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1089-wk-Fact-864F481B04E356A536C8A8A41464106D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,086,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1108-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">935,282</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1127-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,899</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of revenues:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1273-wk-Fact-6C2EB84373A650EFEB38A8A41458E807" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,938</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1292-wk-Fact-09CBC2ACE49846F7E9ACA8A41424077D" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,802</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1311-wk-Fact-067C09EB7A09FE6FD164A8A413FAE2D0" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,321</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1332-wk-Fact-B7BA5EE889F4BB1198C5A8A414788B75" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,642</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1351-wk-Fact-DB33FE2820A9D6FA2256A8A413FE2519" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,972</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1370-wk-Fact-D27459C26B4C85F5BBD9A8A41474E337" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,686</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services, maintenance and subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1391-wk-Fact-797EC12F10302DE8AD03A8A41458DF6A" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">502,138</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1410-wk-Fact-EF98512901AED6A601EAA8A414686880" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">438,923</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1429-wk-Fact-41109F4E276700A7B3B0A8A41402AA7E" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">387,634</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1450-wk-Fact-66ACA866C799D2B02477A8A4144015B1" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,337</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1469-wk-Fact-3269429CE300290862B2A8A4146CA411" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,299</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1488-wk-Fact-98E74863941D41C187E9A8A414740F48" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,286</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1509-wk-Fact-777BF2022C0DF4DBA237A8A4147C415E" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,472</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1528-wk-Fact-31FFA0B934E3D02D902AA8A413E5B3BE" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,708</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1547-wk-Fact-209F5B30E837ACCC8276A8A413E1090A" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,595</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:76px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total cost of revenues</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1568-wk-Fact-6B8CB3B487D4F19953CBA8A4144048DF" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">569,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1587-wk-Fact-A4BB60C0061E70458DC9A8A414708E06" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">495,704</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1606-wk-Fact-3FEBB01B22F95307C497A8A413F2B677" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">441,522</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross profit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1689-wk-Fact-35C8E7921B78C23D16AEA8A4146881EC" name="us-gaap:GrossProfit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">516,900</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1708-wk-Fact-9B750E89E00489AE1F1FA8A4146012A4" name="us-gaap:GrossProfit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">439,578</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1727-wk-Fact-261A1BE7F02787BB740FA8A414409F7E" name="us-gaap:GrossProfit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">399,377</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1810-wk-Fact-43D7E2A236BACE1A3F3CA8A41402B71C" name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">257,746</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1829-wk-Fact-5AEE1F6D9EF061A09579A8A413FE3493" name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">207,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1848-wk-Fact-7A37823C4499E533FB76A8A413EA4637" name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">175,914</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Research and development expense</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1869-wk-Fact-5A09D0F247EB98F46B45A8A41402EAE9" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,342</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1888-wk-Fact-2480687F0D3247F4AE99A8A413EE3E35" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">63,264</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1907-wk-Fact-06EEE3FA8E44C0ACE905A8A4145C605A" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">47,324</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1929-wk-Fact-7966AC61C464E8AD8E6EA8A414608991" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,445</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1948-wk-Fact-B3FA2AA3C6625DE418DCA8A41454998D" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,217</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e1967-wk-Fact-8464AB9D34789E1EDD9FA8A414787CE5" name="tyl:AmortizationofCustomerandTradeNamesIntangibleAssets" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,381</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2050-wk-Fact-89405A0CBDD732779B3FA8A41406A406" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">156,367</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2069-wk-Fact-37B22B4657ED2BF30797A8A414065BED" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">152,492</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2088-wk-Fact-B887E12049251737E16EA8A414249C98" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">162,758</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income, net</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2171-wk-Fact-A476B206641FB223FFB6A8A414283564" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,471</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2190-wk-Fact-59A7EECEFFA4179EC344A8A41438EB15" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,378</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2209-wk-Fact-91EE002D3D4CD395BBB9A8A414385899" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">698</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Income before income taxes</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2230-wk-Fact-AAECBAE1D97EC9A3A19DA8A41402C8CC" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">159,838</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2249-wk-Fact-0639764666086D738A60A8A41406E4E7" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,870</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2268-wk-Fact-8A85652EFFEF7972B095A8A413FAC43E" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">163,456</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax provision (benefit)</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2289-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,311</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2308-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,408</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48736321e2327-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,115</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2354-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2373-wk-Fact-83D597512074D1ADC051A8A4143010C1" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">147,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2392-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per common share:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2537-wk-Fact-EE9A2901D384EFA28CDDA8A413F60C40" name="us-gaap:EarningsPerShareBasic" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.79</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2556-wk-Fact-06C0F412053A2394EE5EA8A413EEE587" name="us-gaap:EarningsPerShareBasic" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.84</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2575-wk-Fact-074963B3383E675F2128A8A4143C4090" name="us-gaap:EarningsPerShareBasic" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">4.55</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2597-wk-Fact-E90DD5B91EA2DBB2BA7BA8A413FA5F46" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2616-wk-Fact-0E479A1F4C6D148993EBA8A414504516" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.68</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48736321e2635-wk-Fact-EDCED98D78B4DC7353B5A8A4145C170F" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">4.32</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div style="line-height:120%;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">See accompanying notes.</span></div><div style="line-height:120%;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-4</span></div></div><hr style="page-break-after:always"></hr><div><a id="s1ECF17EEE8895E19A3183D7891524F96"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Balance Sheets</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(In thousands, except par value and share amounts)</span></div><div style="line-height:120%;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:77%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">12/31/2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">ASSETS</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Current assets:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash and cash equivalents</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e772-wk-Fact-15BF7D0FDA926441A68EA8A4146884D3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">232,682</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e791-wk-Fact-AE2A97FACC445AC6DE55A8A41450F62B" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">134,279</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;background-color:#cceeff;">Accounts receivable (less allowance for losses and sales adjustments of $5,738 in 2019 and $4,647 in 2018)</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e806-wk-Fact-D6BAFBC61E43F960712DA8A414706031" name="us-gaap:AccountsReceivableNetCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">374,089</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e825-wk-Fact-CB46D0B1F38E01055003A8A41438D44A" name="us-gaap:AccountsReceivableNetCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">298,912</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Short-term investments</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e845-wk-Fact-3DA27C2A9E5B5883FADBA8A4146802FB" name="us-gaap:ShortTermInvestments" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,399</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e864-wk-Fact-16745946E172B65F6A96A8A4144C1367" name="us-gaap:ShortTermInvestments" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">44,306</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Prepaid expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e884-wk-Fact-53BAEB379588AD3DDCF7A8A41468E8AC" name="us-gaap:PrepaidExpenseCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,717</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e903-wk-Fact-22CD1DB0094537EC1FA8A8A41402C13F" name="us-gaap:PrepaidExpenseCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">33,258</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e923-wk-Fact-2E0B4D1BE624BA31319EA8A414486A67" name="us-gaap:IncomeTaxReceivable" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,482</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e942-wk-Fact-22E6B3A9783180824092A8A414680676" name="us-gaap:IncomeTaxReceivable" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,697</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other current assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e962-wk-Fact-47393ECA1F7A843F711CA8A413EAA552" name="us-gaap:OtherAssetsCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,328</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e981-wk-Fact-4F8AD3E5AD5CC2FFAD7BA8A41470EFCE" name="us-gaap:OtherAssetsCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,406</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total current assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1001-wk-Fact-C28423C29FD9EF612491A8A413EAC132" name="us-gaap:AssetsCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">679,697</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1020-wk-Fact-1F9A44D13683B2A875DCA8A4146C19EC" name="us-gaap:AssetsCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">518,858</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable, long-term</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1082-wk-Fact-DFDF99CF9DA1438584B4A8A413E549E2" name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,432</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1101-wk-Fact-AABC73FA098C1E522C64A8A413FADA3D" name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,020</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1121-wk-Fact-8DE440BE3BCA3C99E80A1113DBF6BD1F" name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment, net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1160-wk-Fact-956974638BE1AC793DF0A8A413F65492" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">171,861</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1179-wk-Fact-BA04C938D77311E9754AA8A414440441" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,177</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other assets:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1240-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F" name="us-gaap:Goodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,117</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1259-wk-Fact-3BDECAB71ABF01038FDAA8A414486727" name="us-gaap:Goodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">753,718</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other intangibles, net</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1279-wk-Fact-ED05E32393E8186CAB92A8A413F686D1" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">378,914</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1298-wk-Fact-445367394A1A9150FBB3A8A4146C26AC" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">276,852</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-current investments and other assets</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1318-wk-Fact-430D8519792B8BBD87ABA8A414506FB1" name="us-gaap:InvestmentsAndOtherNoncurrentAssets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">79,601</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1337-wk-Fact-082FFCD3E110178EA5B6A8A413E1D303" name="us-gaap:InvestmentsAndOtherNoncurrentAssets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">70,338</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1362-wk-Fact-7BC0663EBF709B61711AA8A4140A8042" name="us-gaap:Assets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,191,614</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1381-wk-Fact-EE621A7A1F9B03681BD2A8A4146CCC2A" name="us-gaap:Assets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,790,963</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">LIABILITIES AND SHAREHOLDERS' EQUITY</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Current liabilities:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1525-wk-Fact-1093568AC14B2CA7AFA1A8A413F69C9C" name="us-gaap:AccountsPayableCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,977</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1544-wk-Fact-63DCFBE27DB25F189E53A8A41450ED0F" name="us-gaap:AccountsPayableCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,910</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1559-wk-Fact-0C8B9460C27847D09583A8A414744443" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,234</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1578-wk-Fact-603BC66574C110E7A142A8A41460AFDA" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">66,480</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1598-wk-Fact-B5B71B1D8A703078B130111525DB16D4" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,387</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1637-wk-Fact-0DFAB3826EBF4B415B36A8A414747497" name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">412,495</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1656-wk-Fact-38F7B780573E7F39E974A8A41468DE0E" name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">350,512</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total current liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1676-wk-Fact-C79E160830231976EEA8A8A4145CB5AA" name="us-gaap:LiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">509,093</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1695-wk-Fact-4928F0847220E23BF5C0A8A413E1F646" name="us-gaap:LiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">423,902</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revolving line of credit</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1756-wk-Fact-A6D9B4F6E43353046399A8A413F276BD" name="us-gaap:LongTermLineOfCredit" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1775-wk-Fact-4DB0B2CA10220C9D5178A8A41470519A" name="us-gaap:LongTermLineOfCredit" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue, long-term</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1795-wk-Fact-C292C11A93A5A4AC19ADA8A41468E320" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">199</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1814-wk-Fact-2A7D760869FF9D936C80A8A413EE1A07" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">424</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income taxes</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1834-wk-Fact-61ACCC72BF67E8EEF21CA8A41450A4BF" name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">48,442</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1853-wk-Fact-F7951A36B54F17406325A8A41478A7EF" name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">41,791</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities, long-term</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1873-wk-Fact-5D28A059EFA776F6383A1115FAEFC609" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,822</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Commitments and contingencies</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1954-wk-Fact-2C80B6333C1F214E7242A8A41444EF02" name="us-gaap:CommitmentsAndContingencies" contextRef="FI2019Q4" unitRef="usd" xsi:nil="true" scale="3" format="ixt:nocontent"></ix:nonFraction></span><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e1973-wk-Fact-B8277156F51F36969D77A8A4146C44AF" name="us-gaap:CommitmentsAndContingencies" contextRef="FI2018Q4" unitRef="usd" xsi:nil="true" scale="3" format="ixt:nocontent"></ix:nonFraction></span><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shareholders' equity:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Preferred stock, $10.00 par value; 1,000,000 shares authorized; none issued</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2073-wk-Fact-300D0AF7F4B08311E6E6A8A4144CC5AB" name="us-gaap:PreferredStockValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2092-wk-Fact-0C46B3B95369A2641898A8A4142CAAFE" name="us-gaap:PreferredStockValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-indent:18px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Common stock, $0.01 par value; 100,000,000 shares authorized; 48,147,969 shares</span></div><div style="text-indent:18px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; issued in 2019 and 2018</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2115-wk-Fact-3163C82927CDD90BEF20A8A414586C36" name="us-gaap:CommonStockValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2134-wk-Fact-9D9FF0F1E335D35B492DA8A4144404E3" name="us-gaap:CommonStockValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Additional paid-in capital</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2154-wk-Fact-5B9ED4B5780E5C0AC071A8A414683029" name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">739,478</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2173-wk-Fact-46B0B77BC6202C8AFFF5A8A414029FA9" name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">731,435</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated other comprehensive loss, net of tax</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48738427e2193-wk-Fact-BB41CC8378F827BC4A91A8A4145CEC6A" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48738427e2213-wk-Fact-FFE9F393BF26C535480FA8A413F25158" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained earnings</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2234-wk-Fact-DB16C997A3CBB114B17FA8A41458E99C" name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">917,336</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2253-wk-Fact-8783C9C1E6C49C9A4B52A8A413EE123A" name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">771,925</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Treasury stock, at cost; 8,839,352 and 9,872,505 shares in 2019 and 2018, respectively</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48738427e2273-wk-Fact-699EE41355D9A968F915A8A41464E970" name="us-gaap:TreasuryStockValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,191</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48738427e2293-wk-Fact-52151248F3215FFD5063A8A414509CF7" name="us-gaap:TreasuryStockValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">178,949</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total shareholders' equity</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2314-wk-Fact-4774501615700080E3D8A8A4144C427D" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,617,058</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2333-wk-Fact-5F57FF702B17A917AE41A8A414742257" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,324,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2359-wk-Fact-92A643BF6CA2FC88A5EFA8A4145803B4" name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,191,614</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48738427e2378-wk-Fact-4336FAA4AD14F4FA4679A8A4145CCC7A" name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,790,963</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:12pt;">&#160;</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">See accompanying notes.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-5</span></div></div><hr style="page-break-after:always"></hr><div><a id="sECEB9A33042450A898D7678E5B457523"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Cash Flows</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the years ended December&#160;31</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(In thousands)</span></div><div style="line-height:120%;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows from operating activities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e740-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e759-wk-Fact-83D597512074D1ADC051A8A4143010C1" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">147,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e778-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Adjustments to reconcile net income to cash provided by operations:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e856-wk-Fact-5069B9CC264DD2E934F7A8A413FA6FB3" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,672</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e875-wk-Fact-2C4E3579DF72EB46466AA8A41430355B" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">61,759</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e894-wk-Fact-5869AE5BE9721B78EF21A8A413F6174D" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,395</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Share-based compensation expense</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e915-wk-Fact-8C4C0E3DAC91D0F64CD3A8A414065B2E" name="us-gaap:ShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">59,967</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e934-wk-Fact-833C186BB62ED2C08642A8A4141863B1" name="us-gaap:ShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">52,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e953-wk-Fact-366E178F7210EAEAF5D2A8A413F65CE1" name="us-gaap:ShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Provision for losses and sales adjustments - accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e974-wk-Fact-E69256B485146BDF1DBAA8A41434AAA4" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,636</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e993-wk-Fact-1F2986CB3DABB65208A4A8A4145C5DD1" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">569</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1013-wk-Fact-C27CFDB272548DED7536A8A41434102F" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,031</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets - non cash </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1034-wk-Fact-C05BC479FC7A1E5847F71129ACE4BB0C" name="tyl:OperatingLeaseRightOfUseAssetsNonCash" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,397</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1093-wk-Fact-233FBB96D5386B99336EA8A414023908" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,088</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1113-wk-Fact-DF8D9632546CC2F32587A8A41428077F" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,069</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1133-wk-Fact-04C2B2FDC17E67C3ED11A8A4142CBF29" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">33,664</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-indent:36px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Changes in operating assets and liabilities, exclusive of effects of</span></div><div style="text-indent:36px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; acquired companies:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1220-wk-Fact-D511BCA8BB90E6D678BFA8A4146045AF" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65,738</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1240-wk-Fact-EEC8358C057D3DB64320A8A4141C5B7D" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,916</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1260-wk-Fact-8C132933961B89816ECBA8A414126FEF" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">33,091</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax receivable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1283-wk-Fact-6059F82E8DEA5DDEDC75A8A413FADFFC" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,925</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1303-wk-Fact-7C0DBCB0C025A9E4D266A8A4140E4F91" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,642</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1322-wk-Fact-6C5859324006BD69F992A8A4141CBE20" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,444</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Prepaid expenses and other current assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1344-wk-Fact-3AC349E9EE5ED08B1E8EA8A41428979F" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,976</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1364-wk-Fact-E18BC6DAD402B9A1EFC4A8A4141873E1" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">588</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1384-wk-Fact-F284670B12D5DB3E865EA8A41430E4C7" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,958</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1406-wk-Fact-5760BCE4D9C97A4A7816A8A4140EA6B5" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,403</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1425-wk-Fact-E5F317731D4C5B8C5A27A8A414282DB2" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,416</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1445-wk-Fact-CDCE80EAEF0CC5A813C7A8A413FEFCA7" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">878</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1466-wk-Fact-3DC1AF765163B4E31A0D112A711B827C" name="tyl:IncreaseDecreaseInOperatingLeaseLiabilities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,113</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1526-wk-Fact-14E41697849980336C63A8A414385C02" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,516</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1545-wk-Fact-B2352E0282A091C85A7EA8A414182EF3" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,445</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1565-wk-Fact-29ABC570007232D4B26DA8A413E5994A" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,050</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1586-wk-Fact-4BAAC803E4CF47D0E188A8A41434EB79" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">44,442</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1605-wk-Fact-D9F3DC023062486232D2A8A414123F62" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">43,603</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1624-wk-Fact-F6214EC1B113467F4A79A8A4141C9212" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,639</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:76px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash provided by operating activities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1645-wk-Fact-797D827369AC63357BB3A8A4145C53D0" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">254,720</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1664-wk-Fact-35AA46EC22C6A7DFEDF3A8A41424383B" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">250,203</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1683-wk-Fact-317CB46B30C16A267C1AA8A41434FA59" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">195,755</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows from investing activities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Additions to property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1828-wk-Fact-15752F6F3D27BC539579113281043AD5" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,236</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1848-wk-Fact-BAD75C0A52E9DFAA2982113280F17E9E" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,424</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1868-wk-Fact-8F4BB987F70FA9CBF008113280FA988D" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">43,057</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchase of marketable security investments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1890-wk-Fact-1094F32C0DC852D89560A8A41418D922" name="us-gaap:PaymentsToAcquireMarketableSecurities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">54,742</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1910-wk-Fact-DE8836EEE08E612BED22A8A41418980D" name="us-gaap:PaymentsToAcquireMarketableSecurities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">115,625</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e1930-wk-Fact-AE15160B576806C9C025A8A41402B889" name="us-gaap:PaymentsToAcquireMarketableSecurities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">59,779</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Proceeds from marketable security investments</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1953-wk-Fact-5691B0397C1B65442359A8A4142C41D9" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">70,796</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1972-wk-Fact-45674DA129E4493FA02AA8A414180D20" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,205</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e1991-wk-Fact-A7BD0EAE53FB7DBF936FA8A41424F790" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,786</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2012-wk-Fact-82446D8C2CE0A0BC2C5811335CBB564D" name="us-gaap:PaymentsForSoftware" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2032-wk-Fact-F5503292F2A213356E1B11335CB2AAE1" name="us-gaap:PaymentsForSoftware" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2051-wk-Fact-99AA8B48F8873576C33D11335CAD24D2" name="us-gaap:PaymentsForSoftware" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of acquisitions, net of cash acquired</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2072-wk-Fact-65B9882DD1EEE668CA16A8A41460E9AA" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">218,734</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2092-wk-Fact-CCB0F71EA18ED313FC6FA8A414283309" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">178,093</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2112-wk-Fact-CE883B2676F5DCF790B1A8A4143C57BD" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,344</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(Increase) decrease in other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2134-wk-Fact-B7E7E2CBC45B9DE8A305A8A41418F3C8" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">295</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2154-wk-Fact-E7D4846D7259B90874B0A8A413FEAE39" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,682</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2173-wk-Fact-4527C10E6ECC617BFE0CA8A414125852" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:76px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash used by investing activities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2195-wk-Fact-CF7895747654AD7C15BFA8A41438A8A9" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">245,015</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2215-wk-Fact-6F042F0121CC2DD04BD9A8A41430365C" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">238,255</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2235-wk-Fact-9F838A9FCCD5B697FC61A8A414188DCF" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">85,395</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash flows from financing activities:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Decrease in net borrowings on revolving line of credit</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2381-wk-Fact-CF50050E5C06501AF236A8A4145CF9E2" name="us-gaap:RepaymentsOfLinesOfCredit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2400-wk-Fact-5F51A12F73C5D09A68F5A8A414021B62" name="us-gaap:RepaymentsOfLinesOfCredit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2419-wk-Fact-2D730431C8BF4A91601DA8A413F25871" name="us-gaap:RepaymentsOfLinesOfCredit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchase of treasury shares</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2441-wk-Fact-5F9DE65C3E1992717415A8A41434BF72" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,786</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2461-wk-Fact-66C8A602A5D2863141E7A8A413FEE27B" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,553</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2481-wk-Fact-C6D8887E94CB918C3445A8A413FE429A" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,474</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Proceeds from exercise of stock options</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2503-wk-Fact-80D7571A4D4FAAEF6EC6A8A413FA569E" name="us-gaap:ProceedsFromStockOptionsExercised" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">96,908</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2522-wk-Fact-60B1A85A5E4FA010041CA8A414347028" name="us-gaap:ProceedsFromStockOptionsExercised" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">74,907</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2541-wk-Fact-2C96B69C3663E722CB9DA8A4145CCB8A" name="us-gaap:ProceedsFromStockOptionsExercised" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,845</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Contributions from employee stock purchase plan</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2562-wk-Fact-972F67CF906DC5C60829113DC3964448" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,576</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2581-wk-Fact-E5966ADA7A282AB737DC113DC41D1709" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,051</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2600-wk-Fact-6400EB7C1A756F3C63E8113DC35C9502" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,044</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:76px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash provided (used) by financing activities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2622-wk-Fact-9C5436F65B180B6C6B25A8A414129DFB" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">88,698</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2641-wk-Fact-A168420C8B4BAEE135C8A8A4140E6538" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">63,595</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2661-wk-Fact-DFE60ECF0B38340EA404A8A41418D609" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,415</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:17px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net increase (decrease) in cash and cash equivalents</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2744-wk-Fact-122B6EE15047BF44C356A8A4140EC683" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">98,403</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745001e2763-wk-Fact-AD2BA9658CAF9E418E6DA8A41438461D" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">51,647</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2783-wk-Fact-FCFD9D193002CD2F06E3A8A413FA0787" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">149,775</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash and cash equivalents at beginning of period</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2804-wk-Fact-1B4A5C73E49FE29FD08DA8A414120EBA" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">134,279</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2823-wk-Fact-CABB0CAD8BCD7B7AE7A9A8A41412D99D" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">185,926</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2842-wk-Fact-502AFF4971087F8103FFA8A41402D4D0" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,151</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash and cash equivalents at end of period</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2868-wk-Fact-D9D8A33FC5895A3C276AA8A4141296F2" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">232,682</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2887-wk-Fact-1B4A5C73E49FE29FD08DA8A414120EBA" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">134,279</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745001e2906-wk-Fact-CABB0CAD8BCD7B7AE7A9A8A41412D99D" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">185,926</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:12pt;">&#160;</span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">See accompanying notes.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-6</span></div></div><hr style="page-break-after:always"></hr><div><a id="s6A78663706FC50C5A2F605419CAFA780"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Shareholders&#8217; Equity</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(In thousands)</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="30"></td></tr><tr><td style="width:27%;"></td><td style="width:5%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:5%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Common Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Additional</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Paid-in</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Other</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Comprehensive</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income (Loss)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Treasury Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shareholders'</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Equity</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at December&#160;31, 2016</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e966-wk-Fact-FBD0B62B7408FB0E1B70A8A414343355" name="us-gaap:SharesIssued" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">48,148</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e985-wk-Fact-09E84A60933771A636A9A8A4142C4CFE" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1004-wk-Fact-4614F572280CF119C6A6A8A4142CBFDF" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">556,663</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1024-wk-Fact-8CC9499E393071A59194A8A4142CDE82" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1044-wk-Fact-8710A02B444B8264FC15A8A414245FBD" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">454,892</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1058-wk-Fact-D5AFD6BD86AA13E023EAA8A41418DA57" name="us-gaap:SharesIssued" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">11,382</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1079-wk-Fact-6A9EDE482BAE623C2B0EA8A41418C4A7" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">77,449</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1099-wk-Fact-3F53B5EC4A5CE860166DA8A4142404F1" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">934,541</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1186-wk-Fact-128AF9A5198713F2EA91A8A41424A7FC" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1239-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of shares pursuant to stock compensation plan</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1292-wk-Fact-A84A767535FE14D953C9A8A41434FB23" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,174</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1350-wk-Fact-3AB9909DF2657EDD41A7A8A41434274A" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,113</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1365-wk-Fact-87FE6E24DDF40D7A7C01A8A4141818DA" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,671</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1384-wk-Fact-22D5F1AA9D4A31160287A8A41424BEB1" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,845</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock compensation</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1437-wk-Fact-E0E21AC3CC3E5B671849A8A4141CCD14" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1529-wk-Fact-95DAD12B25FE1449C59BA8A414287AFC" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1582-wk-Fact-DF48B7ABA0797740EA31A8A4142CB188" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,682</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1640-wk-Fact-1E5E7953B939D7AE9F5DA8A4143015C1" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1655-wk-Fact-0345CF54A43061463F17A8A4141C43D1" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,362</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1674-wk-Fact-335CD0EC08D6891C8C0FA8A414180718" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,044</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Treasury stock purchases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1785-wk-Fact-95018487A0FE65C11B1BA8A414380AA6" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">44</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1801-wk-Fact-C7189E6ABEACFEA14402A8A41424D508" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,613</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1821-wk-Fact-7532671C68CAEB127061A8A414187D5D" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,613</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1842-wk-Fact-185D68431B30981C1503A8A4142CDF65" name="us-gaap:SharesIssued" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">48,148</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1856-wk-Fact-3486250EF7C7C5DB2C32A8A414303CFB" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1875-wk-Fact-058C23A1088C4FEFF429A8A4142886BA" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">626,867</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1895-wk-Fact-1557CF0E9C3A09D70CE1A8A41424E60D" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1915-wk-Fact-B1580E0D627AC924E251A8A4142C3B8A" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">624,463</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1934-wk-Fact-E413A911B001508B8119A8A4141C7C2B" name="us-gaap:SharesIssued" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">10,262</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e1950-wk-Fact-C62270AD8E6803905774A8A41418C1E7" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">60,029</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e1970-wk-Fact-F3E6A51EB1585B391DC9A8A4143091A9" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,191,736</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2062-wk-Fact-622CFBB28DAC1CCADBF6A8A414304287" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">147,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2115-wk-Fact-83D597512074D1ADC051A8A4143010C1" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">147,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of shares pursuant to stock compensation plan</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2168-wk-Fact-E542A97875B701752816A8A4141CC1F0" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">44,458</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2226-wk-Fact-99FFAA58CB741647FD7BA8A41420635B" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,126</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2241-wk-Fact-D80DDE1B1B5449A108A8A8A414186915" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,449</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2260-wk-Fact-AE38038BB58589E8B718A8A4143452CC" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">74,907</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock compensation</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2314-wk-Fact-0621787139CA2488F8DDA8A41430CB7F" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">52,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2406-wk-Fact-A2FCCDCE42DE380597E6A8A414287D8A" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">52,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2459-wk-Fact-D5A185116CA46134703EA8A4141C98A4" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,370</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2517-wk-Fact-F73680283F68BD504163A8A4142416A6" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">45</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2532-wk-Fact-D6DAA4334CA741D2B062A8A414303846" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">681</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2551-wk-Fact-71D4983CED9ED71F20E0A8A4143C1521" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,051</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Treasury stock purchases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2662-wk-Fact-2D208ED96CA970AC0289A8A41418D8FC" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2678-wk-Fact-E78B5356110EECD295CDA8A4141CA593" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">150,050</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2698-wk-Fact-1FCC20A5B75088524C85A8A41418E545" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">150,050</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at December&#160;31, 2018 </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2719-wk-Fact-835E0DE6FCA1960F2A3FA8A414186D68" name="us-gaap:SharesIssued" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">48,148</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2733-wk-Fact-400DD96F5A6DC2529323A8A414245F66" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2752-wk-Fact-DB40763F3F240F97587BA8A414344D15" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">731,435</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2772-wk-Fact-A9E72BB7F4A5CE34B256A8A4142C526E" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2792-wk-Fact-6DA2F5BBCEBC42719E0FA8A4143035A2" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">771,925</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2811-wk-Fact-0CADFEAECDD990E7F3E7A8A414307B83" name="us-gaap:SharesIssued" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">9,872</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e2827-wk-Fact-47F2CADACD58EA41EA9EA8A414304EC5" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">178,949</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2847-wk-Fact-5F57FF702B17A917AE41A8A414742257" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,324,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2939-wk-Fact-E49CC95B9DACC3A0B7F1A8A414300873" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e2992-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained earnings adjustment-adoption of Topic 842 Leases, net of taxes</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3084-wk-Fact-AD41619A5D0878468ECE114B44087078" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="I2019Q1Jan01_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,116</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3138-wk-Fact-9F28AD6B3DC17BEA3709114B4408A77A" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="I2019Q1Jan01" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,116</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercise of stock options and vesting of restricted stock units</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3192-wk-Fact-E31B55612005EBEEF643A8A4141C7EA9" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">52,833</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3251-wk-Fact-53F10C66F924055B8BC9A8A4143028A0" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,075</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3266-wk-Fact-B242C8D751CEDB4938F4A8A4142CD97B" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">149,741</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3285-wk-Fact-BB00C5D3B67C7629EBDCA8A414343064" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">96,908</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Employee taxes paid for withheld shares for taxes upon equity award</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3396-wk-Fact-FB44AF1809B449BD93EB1156486BE071" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">23</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3412-wk-Fact-21331C0635942D5C70E3115581A21620" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,361</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3432-wk-Fact-0D1308B7AA7AE7D85AE5115581A231C4" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,361</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock compensation</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3486-wk-Fact-2A21C4966D31B18F8FB2A8A41430C659" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">59,967</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3578-wk-Fact-B0D3FACAD9E4E21DFD08A8A414247DA7" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">59,967</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:12px;text-indent:-12px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of shares pursuant to employee stock purchase plan</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3631-wk-Fact-34A9C32FA896932F2872A8A41430BCB7" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">909</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3689-wk-Fact-E7458E5DC4CD4E5227E2A8A41434B8F6" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3704-wk-Fact-B14C4B708EEDDD580ACEA8A41424AD0F" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,667</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3723-wk-Fact-61E43DB65B80D63B215BA8A414247AFE" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,576</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Treasury stock purchases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3834-wk-Fact-13206C43F74531688A49A8A41434BE81" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">72</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3850-wk-Fact-DD75FA7BE0607A91D24DA8A414305D9B" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,289</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3870-wk-Fact-86CD06ECA10567DA01F3A8A4143462BF" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,289</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3892-wk-Fact-1B0C8D40BE972C328BFBA8A4141CDF3F" name="us-gaap:SharesIssued" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">48,148</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3911-wk-Fact-0CF49A1F13B95E159837A8A4143C9235" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3930-wk-Fact-24346D588F094FAC78C9A8A4142CB3F2" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">739,478</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3950-wk-Fact-FC8C46F8CD14FA877549A8A4142C2D10" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e3970-wk-Fact-50A3EA99A79CB13AD862A8A4141C4081" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">917,336</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e3984-wk-Fact-3D0DEDFF060F68544696A8A4142C07AF" name="us-gaap:SharesIssued" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">8,839</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48745000e4005-wk-Fact-7CB868A26A799C95CE59A8A41418ABA6" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">40,191</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48745000e4025-wk-Fact-4774501615700080E3D8A8A4144C427D" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,617,058</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">See accompanying notes.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-7</span></div></div><hr style="page-break-after:always"></hr><div><a id="s10D664457D565EB38922339B293669BF"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Tyler Technologies, Inc.</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Notes to Consolidated Financial Statements</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(Tables in thousands, except per share data)</span></div><div><a id="s00CB9D220C545AAE8B0FD11E351685F9"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-0-wk-Fact-D5E7E89822F04BCB14D4A8A41434F943" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-1" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span></div></ix:nonNumeric></td></tr></table><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-1" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DESCRIPTION OF BUSINESS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide integrated software systems and related services for the public sector, with a focus on local governments. We develop and market a broad line of software solutions and services to address the information technology (&#8220;IT&#8221;) needs primarily of cities, counties, schools and other local government entities. In addition, we provide professional IT services, including software and hardware installation, data conversion, training, and for certain customers, product modifications, along with continuing maintenance and support for customers using our systems. We also provide subscription-based services such as software as a service (&#8220;SaaS&#8221;) arrangements, which primarily utilize the Tyler private cloud, and electronic document filing solutions (&#8220;e-filing&#8221;). In addition, we provide property appraisal outsourcing services for taxing jurisdictions.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ConsolidationPolicyTextBlock" id="TextSelection-14394E8DEE3C6F6CBE0BA8A4149003BF-0-wk-Fact-DD46CED41E0915CBC791A8A41468B4F5" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PRINCIPLES OF CONSOLIDATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The consolidated financial statements include our parent company and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e597-wk-Fact-77A82FE193703687973C4168E733A2C4" name="tyl:NumberOfWhollyOwnedSubsidiaries" contextRef="FD2019Q4YTD" unitRef="subsidiary" decimals="INF" scale="0" format="ixt-sec:numwordsen">sixteen</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> subsidiaries, which are wholly-owned. All significant intercompany balances and transactions have been eliminated in consolidation. Comprehensive income is defined as the change in equity of a business enterprise during a period from transactions, and other events and circumstances from non-owner sources and includes all components of net income (loss) and other comprehensive income (loss). We had no items of other comprehensive income (loss) during the years ended December 31, </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="TextSelection-5D7CF5C5870EFBD40701A8A414902F5C-0-wk-Fact-2D85366C7BC43935F13FA8A4146042A1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CASH AND CASH EQUIVALENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash in excess of that necessary for operating requirements is invested in short-term, highly liquid, income-producing investments. Investments with original maturities of three months or less are classified as cash and cash equivalents, which primarily consist of cash on deposit with several banks and money market funds. Cash and cash equivalents are stated at cost, which approximates market value.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="TextSelection-4727D3A47A452AA29888A8A414903E98-0-wk-Fact-7D08C7639A8244E4C3ADA8A41438087F" continuedAt="TextSelection-4727D3A47A452AA29888A8A414903E98-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">REVENUE RECOGNITION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Nature of Products and Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#8220;PCS&#8221; or &#8220;maintenance&#8221;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the contract, or contracts, with a customer</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Determination of the transaction price</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Allocation of the transaction price to the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recognition of revenue when, or as, we satisfy a performance obligation</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether those services are highly interdependent or interrelated to the product&#8217;s functionality. The transaction price is allocated to the distinct performance obligations on a relative standalone selling price (&#8220;SSP&#8221;) basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-8</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-4727D3A47A452AA29888A8A414903E98-1" continuedAt="TextSelection-4727D3A47A452AA29888A8A414903E98-2"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-2" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-3"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Software Arrangements:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Licenses and Royalties</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many of our software arrangements involve &#8220;off-the-shelf&#8221; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#8217;s purpose upon installation, and remaining services such as training are not considered highly interdependent or interrelated to the product's functionality.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software license fees are billed in accordance with the contract terms. Typically, a majority of the fee is due when access to the software license is made available to the customer and the remainder of the fee due over a passage of time stipulated by the contract.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We recognize royalty revenue when the sale occurs under the terms of our third-party royalty arrangements. Currently, our third-party royalties are recognized on an estimated basis and are trued up when we receive notice of amounts we are entitled to receive. We typically receive notice of royalty revenues we are entitled to and billed on a quarterly basis in the quarter immediately following the royalty reporting period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As noted above, some of our software arrangements include services considered highly interdependent or highly interrelated or require significant customization to meet the customer's desired functionality. For these software arrangements, both the software licenses and related software services revenue are not distinct and are recognized over time using the progress-to-completion method. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts.  Contract fees are typically billed on a milestone basis as defined within contract terms.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met. When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material basis.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Post-Contract Customer Support</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our customers generally enter into PCS agreements when they purchase our software licenses. PCS includes telephone support, bug fixes, and rights to upgrades on a when-and-if available basis. PCS is considered distinct when purchased with our software licenses. Our PCS agreements are typically renewable annually. PCS is recognized over time on a straight-line basis over the period the PCS is provided. All significant costs and expenses associated with PCS are expensed as incurred.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Computer Hardware Equipment</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenue allocable to computer hardware equipment is recognized at a point in time when control of the equipment is transferred to the customer.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Subscription-Based Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based services consist primarily of revenues derived from SaaS arrangements, typically utilizing the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. Our subscription contracts are generally&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e733-wk-Fact-872AAD2CFEE3DB7A18A8A8A41434007A" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> or longer in length, billed annually in advance, and non-cancelable.</span></div></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-9</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-4727D3A47A452AA29888A8A414903E98-2" continuedAt="TextSelection-4727D3A47A452AA29888A8A414903E98-3"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-3" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-4"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#8217;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements services ratably over the term of the arrangement, which range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e744-wk-Fact-C5C9C5184451AC3C07D32BB31292CDF0" name="tyl:RevenueFromContractWithCustomerContractTerm" contextRef="FD2018Q3YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">ten years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">, but are typically for a period of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e752-wk-Fact-872AAD2CFEE3DB7A18A8A8A41434007A" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Electronic filing transaction fees primarily pertain to documents filed with the courts by attorneys and other third-parties via our e-filing services and retrieval of filed documents via our access services. For each document filed with a court, the filer generally pays a transaction fee and a court filing fee to us and we remit a portion of the transaction fee and the filing fee to the court. We record as revenue the transaction fee, while the portion of the transaction fee remitted to the courts is recorded as cost of revenues as we are acting as a principal in the arrangement. Court filing fees collected on behalf of the courts and remitted to the courts are recorded on a net basis and thus do not affect the statement of comprehensive income. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. In general, when we are the principal in a transaction based on the factors identified in ASC 606-10-55-36 through 55-40, we record the revenue and related costs on a gross basis. Otherwise, we net the cost of revenue associated with the service against the gross revenue (amount billed to the customer) and record the net amount as revenue.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For e-filing transaction fees and other transaction-based revenues, we have the right to charge the customer an amount that directly corresponds with the value to the customer of our performance to date. Therefore, we recognize revenue for these services over time based on the amount billable to the customer in accordance with the 'as invoiced' practical expedient in ASC 606-10-55-18. In some cases, we are paid on a fixed fee basis and recognize the revenue ratably over the contractual period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs of performing services under subscription-based arrangements are expensed as incurred, except for certain direct and incremental contract origination and set-up costs associated with SaaS arrangements. Such direct and incremental costs are capitalized and amortized ratably over the useful life.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Appraisal Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;">-year periods and consist of various unique activities. Appraisal services require a significant level of integration and interdependency with various individual service components; therefore, the service components are not considered distinct. Appraisal services are recognized over time by measuring progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often executed over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent. Contract fees are typically billed on a milestone basis as defined within contract terms. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Significant Judgments:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our contracts with customers often include multiple performance obligations to a customer. When a software arrangement (license or subscription) includes both software licenses and software services, judgment is required to determine whether the software license is considered distinct and accounted for separately, or not distinct and accounted for together with the software services and recognized over time. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.</span><span style="font-family:inherit;font-size:8pt;"> </span><span style="font-family:inherit;font-size:10pt;">We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach.</span></div></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-10</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-4727D3A47A452AA29888A8A414903E98-3" continuedAt="TextSelection-4727D3A47A452AA29888A8A414903E98-4"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-4" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-5"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services otherwise cannot be considered distinct, we recognize revenue as control is transferred to the customer over time using progress-to-completion methods. Depending on the contract, we measure progress-to-completion primarily using labor hours incurred, or value added. The progress-to-completion method generally results in the recognition of reasonably consistent profit margins over the life of a contract because we can provide reasonably dependable estimates of contract billings and contract costs. We use the level of profit margin that is most likely to occur on a contract. If the most likely profit margin cannot be precisely determined, the lowest probable level of profit margin in the range of estimates is used until the results can be estimated more precisely. These arrangements are often implemented over an extended time period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Typically, the structure of our arrangements does not give rise to variable consideration.&#160;However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Refer to Note 15 - "Disaggregation of Revenue" for further information, including the economic factors that affect the nature, amount, timing, and uncertainty of revenue and cash flows of our various revenue categories.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Contract Balances:</span><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Accounts receivable and allowance for doubtful accounts and sales adjustments</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition may differ from the timing of invoicing to customers. We record an unbilled receivable when revenue is recognized prior to invoicing, or deferred revenue when revenue is recognized subsequent to invoicing. For multi-year agreements, we generally invoice customers annually at the beginning of each annual coverage period. We record an unbilled receivable related to revenue recognized for on-premises licenses as we have an unconditional right to invoice and receive payment in the future related to those licenses.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="TextSelection-5FC34DA37D9866408127A8A414901E7F-0-wk-Fact-4BF24F5EC78CB1FB5B0CA8A4146C3DBA" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e985-wk-Fact-A06E6D939E805A87F371A8A414689316" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,647</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1004-wk-Fact-EE7269D9BE3437CF747BA8A41468462B" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1023-wk-Fact-80F312B4443C620CD707A8A4146C0C0D" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,396</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Provisions for losses and sales adjustments - accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1039-wk-Fact-E69256B485146BDF1DBAA8A41434AAA4" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,636</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1058-wk-Fact-1F2986CB3DABB65208A4A8A4145C5DD1" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">569</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1078-wk-Fact-C27CFDB272548DED7536A8A41434102F" name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,031</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Collection of accounts previously written off</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1099-wk-Fact-2FFD34A42D15A1267C0AA8A4146823CB" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">545</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1119-wk-Fact-6C6984B47C0D4C2B29C6A8A4146C9522" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">211</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1139-wk-Fact-6CDDB12CBF7F1ECD645FA8A4146C1001" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1165-wk-Fact-2B6FC9FC25D7981F7CF3A8A4143C686D" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,738</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1184-wk-Fact-609B91DE358F57CF46E2A8A41448FF77" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,647</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1203-wk-Fact-EE7269D9BE3437CF747BA8A41468462B" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The allowance for doubtful accounts and sales adjustments reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence. </span></div></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-11</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-4727D3A47A452AA29888A8A414903E98-4"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-5" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-6"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with our appraisal services contracts and certain software services contracts, we may perform work prior to when the software and services are billable and/or payable pursuant to the contract. Unbilled revenue is not billable at the balance sheet date but is recoverable over the remaining life of the contract through billings made in accordance with contractual agreements. The termination clauses in most of our contracts provide for the payment for the value of products delivered or services performed in the event of early termination. We have historically recorded such unbilled receivables (costs and estimated profit in excess of billings) in connection with (1)&#160;property appraisal services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing normally occurs subsequently and may span another accounting period; (2)&#160;software services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing for the software element of the arrangement may be based upon the specific phase of the implementation; (3)&#160;software revenue for which we have recognized revenue at the point in time when the software is made available to the customer but the billing has not yet been submitted to the customer; (4)&#160;some of our contracts which provide for an amount to be withheld from a progress billing (generally between </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1219-wk-Fact-AEB5B94B1B53915E123441A575FE44F3" name="tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">5</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1223-wk-Fact-541F3C9F765CBDF93C4241A5762C9314" name="tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">20</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> retention) until final and satisfactory project completion is achieved; and (5)&#160;in a limited number of cases, extended payment terms, which may be granted to customers with whom we generally have a long-term relationship and favorable collection history.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, total current and long-term accounts receivable, net of allowance for doubtful accounts, was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1238-wk-Fact-54FAE2B9F09CEE170112A8A41438E45A" name="us-gaap:AccountsReceivableNet" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">396.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1242-wk-Fact-0EF75DD1C6D926279BD3A8A414687DE6" name="us-gaap:AccountsReceivableNet" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">314.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. We have recorded unbilled receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1246-wk-Fact-1ACEC2E8F891835BF01AA8A414609345" name="us-gaap:AccountsReceivableNet" contextRef="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">134.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1251-wk-Fact-74967F51F250828A7228A8A414680401" name="us-gaap:AccountsReceivableNet" contextRef="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">104.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. Included in unbilled receivables are retention receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1263-wk-Fact-E946A2E3946CF9F927EBA8A41468A864" name="us-gaap:AccountsReceivableNet" contextRef="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">13.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1267-wk-Fact-6223794A27793746AD2FA8A41434DD3E" name="us-gaap:AccountsReceivableNet" contextRef="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">12.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively, which become payable upon the completion of the contract or completion of our fieldwork and formal hearings. Unbilled receivables expected to be collected within one year have been included with accounts receivable, current portion in the accompanying consolidated balance sheets. Unbilled receivables and retention receivables expected to be collected past one year have been included with accounts receivable, long-term portion in the accompanying consolidated balance sheets.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within </span><span style="font-family:inherit;font-size:10pt;">30</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1287-wk-Fact-2539FB9D87143667DE842BE46CD37003" name="tyl:RevenueFromContractWithCustomerPaymentTerm" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durday">90</ix:nonNumeric> days</span></span><span style="font-family:inherit;font-size:10pt;">. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with simplified and predictable ways of purchasing our products and services, not to receive financing from our customers or to provide customers with financing. Examples include invoicing at the beginning of a subscription term with revenue recognized ratably over the contract period, and multi-year on-premises term licenses that are invoiced annually with revenue recognized upfront.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Revenue</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of deferred revenue consists of deferred maintenance revenue that has been billed based on contractual terms in the underlying arrangement, with the remaining balance consisting of payments received in advance of revenue being earned under software licensing, subscription-based services, software and appraisal services and hardware installation. Refer to Note 16 - "Deferred Revenue and Performance Obligations" for further information, including deferred revenue by segment and changes in deferred revenue during the period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Commissions </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized on a straight-line basis over a period of benefit that we have determined to be&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1308-wk-Fact-C5F331BA6EAFACF0656DA8A4143CDBBB" name="tyl:SalesCommissionsAmortizationPeriod" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">seven years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. We utilized the "portfolio approach" practical expedient in ASC 606-10-10-4, which allows entities to apply the guidance to a portfolio of contracts with similar characteristics because the effects on the financial statements of this approach would not differ materially from applying the guidance to individual contracts. Using the 'portfolio approach', we determined the period of benefit by taking into consideration our customer contracts, our technology life-cycle and other factors. Sales commissions for renewal contracts are generally not paid in connection with the renewal of a contract.  In the small number of instances where a commission is paid on a renewal, it is not commensurate with the commission paid on the initial sale and is recognized over the term of renewal, which is generally </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1312-wk-Fact-339519329525D2F824C5300231EBCFBE" name="tyl:SalesCommissionRenewalPeriod" contextRef="FD2019Q4YTD" format="ixt-sec:durwordsen">one year</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of income. Refer to Note 17 - "Deferred Commissions" for further information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prepaid expenses and other current assets include direct and incremental costs such as commissions associated with arrangements for which revenue recognition has been deferred. Such costs are expensed at the time the related revenue is recognized.</span></div></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-12</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-6" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-7"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;<ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:UseOfEstimates" id="TextSelection-2E6E2589F51D44B8DEE9A8A414900728-0-wk-Fact-CBF509B36C494BF62A97A8A41468D385" continuedAt="TextSelection-2E6E2589F51D44B8DEE9A8A414900728-1" escape="true">USE OF ESTIMATES</ix:nonNumeric></span></div><ix:continuation id="TextSelection-2E6E2589F51D44B8DEE9A8A414900728-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of our financial statements in conformity with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) requires us 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. Significant items subject to such estimates and assumptions include revenue recognition, determining the nature and timing of satisfaction of performance obligations, determining the SSP of performance obligations, variable consideration, and other obligations such as returns and refunds; loss contingencies; the estimated useful life of deferred commissions; the carrying amount and estimated useful lives of intangible assets; the carrying amount of operating lease right-of-use assets and operating lease liabilities; determining share-based compensation expense; the valuation allowance for receivables; and determining the potential outcome of future tax consequences of events that have been recognized on our consolidated financial statements or tax returns. Actual results could differ from estimates.</span></div></ix:continuation><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="TextSelection-B5F915606A22885A66F2A8A4149063F3-0-wk-Fact-B5DAD4026F912C0D1240A8A41438AA0B" continuedAt="TextSelection-B5F915606A22885A66F2A8A4149063F3-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PROPERTY AND EQUIPMENT, NET</span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-B5F915606A22885A66F2A8A4149063F3-1">Property, equipment and purchased software are recorded at original cost and increased by the cost of any significant improvements after purchase. We expense maintenance and repairs when incurred. Depreciation and amortization is calculated using the straight-line method over the shorter of the asset&#8217;s estimated useful life or the term of the lease in the case of leasehold improvements. For income tax purposes, we use accelerated depreciation methods as allowed by tax laws.</ix:continuation>&#160;</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-0-wk-Fact-CEB77002BE22E9071639A8A4146CD9F7" continuedAt="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RESEARCH AND DEVELOPMENT COSTS</span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><ix:continuation id="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-1" continuedAt="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-2"><span style="font-family:inherit;font-size:10pt;">We expensed research and development expense of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1364-wk-Fact-4DF065FEC4B8AE526DD7A8A41460252C" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">81.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1372-wk-Fact-516F3BA0E1B5C0309CB2A8A414601940" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">63.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1380-wk-Fact-B9626B67C5EA3F69B82DA8A414602B5F" name="us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">47.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-2">.&#160;&#160;</ix:continuation>&#160;</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:IncomeTaxPolicyTextBlock" id="TextSelection-75BA9EA208E0BBF83F1CA8A4149057D6-0-wk-Fact-8A87E376911F2E5AA447A8A414604999" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INCOME TAXES</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income taxes are accounted for under the asset and liability method. Deferred taxes arise because of different treatment between financial statement accounting and tax accounting, known as &#8220;temporary differences". We record the tax effect of these temporary differences as &#8220;deferred tax assets&#8221; (generally items that can be used as a tax deduction or credit in the future periods) and &#8220;deferred tax liabilities&#8221; (generally items that we received a tax deduction for, which have not yet been recorded in the income statement). The deferred tax assets and liabilities are measured using enacted tax rules and laws that are expected to be in effect when the temporary differences are expected to be recovered or settled. A valuation allowance would be established to reduce deferred tax assets if it is more likely than not that a deferred tax asset will not be "realized."&#160;On December 22, 2017, the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;(the &#8220;Tax Act&#8221;) was enacted into law. The Tax Act amends the Internal Revenue Code to reduce tax rates and modify policies, credits and deductions for individuals and businesses. For businesses, the Tax Act reduces the corporate U.S. federal tax rate from a maximum of&#160;35%&#160;to a flat&#160;21% rate and transitions from a worldwide tax system to a territorial tax system. Under ASC 740 Income Taxes, the effects of changes in tax rates and laws are recognized in the period in which the new legislation is enacted. </span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="TextSelection-4950510359CAE676092AA8A414903DF5-0-wk-Fact-22F2BA6B299F99D6F75CA8A41464D32A" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SHARE-BASED COMPENSATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have a share-based award plan that provides for the grant of stock options, restricted stock units, and performance share units to key employees, directors and non-employee consultants. Stock options generally vest after </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1424-wk-Fact-CD21D9EC9BC5DB45E6A3A8A41464D3E6" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:durwordsen">six years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant and have a contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1428-wk-Fact-24DC000EE1A9EE82D0FCA8A414688F4E" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">10</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years. Restricted stock unit grants generally vest ratably over&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48746316e1436-wk-Fact-9536FC73F3E1B343B3C2A8A41434A668" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Stock Compensation</span><span style="font-family:inherit;font-size:10pt;">. See Note 9 &#8211; &#8220;Share-Based Compensation&#8221; for further information. </span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock" id="TextSelection-605508DB6588EE97F832A8A414904ABF-0-wk-Fact-9A2DF8803B43B95A9265A8A41438FD39" continuedAt="TextSelection-605508DB6588EE97F832A8A414904ABF-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Goodwill</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price over the fair value of net assets acquired, including identifiable intangible assets, in connection with our business combinations. Upon acquisition, goodwill is assigned to the reporting unit that is expected to benefit from the synergies of the business combination, which is the reporting unit to which the related acquired technology is assigned. A reporting unit is the operating segment, or a business unit one level below that operating segment, for which discrete financial information is prepared and regularly reviewed by executive management. </span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-13</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-7" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-8"><ix:continuation id="TextSelection-605508DB6588EE97F832A8A414904ABF-1" continuedAt="TextSelection-605508DB6588EE97F832A8A414904ABF-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. If it is determined through the evaluation of events or circumstances that the carrying value may not be recoverable, we perform a comparison of the estimated fair value of the reporting unit to which the goodwill has been assigned to the sum of the carrying value of the assets and liabilities of that unit. If the sum of the carrying value of the assets and liabilities of a reporting unit exceeds the estimated fair value of that reporting unit, the carrying value of the reporting unit's goodwill is reduced to its fair value through an adjustment to the goodwill balance, resulting in an impairment charge. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, did </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1469-wk-Fact-7ED2376DB45B07193133416B1FEA1FA8" name="us-gaap:GoodwillImpairmentLoss" contextRef="FD2019Q2QTD" unitRef="usd" decimals="INF" scale="0" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;">t result in an impairment charge. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> There have been </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1476-wk-Fact-00DD992E521366D6FF72A8A41464FA1C" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" contextRef="FD2019Q4YTD" unitRef="usd" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> impairments of intangible assets in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Other Intangible Assets</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-605508DB6588EE97F832A8A414904ABF-2">We make judgments about the recoverability of purchased intangible assets other than goodwill whenever events or changes in circumstances indicate that an impairment may exist. Customer base and acquired software each comprise approximately half of our purchased intangible assets other than goodwill. We review our customer turnover each year for indications of impairment. Our customer turnover has historically been very low.&#160;If indications of impairment are determined to exist, we measure the recoverability of assets by a comparison of the carrying amount of the asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets.</ix:continuation>  There have been </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1491-wk-Fact-00DD992E521366D6FF72A8A41464FA1C" name="us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill" contextRef="FD2019Q4YTD" unitRef="usd" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> impairments of intangible assets in any of the periods presented.&#160;&#160;</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="TextSelection-8F4C104D7F7B607C4C05A8A41490B194-0-wk-Fact-8AFFB825E092C555DE7FA8A414647D8B" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We periodically evaluate whether current facts or circumstances indicate that the carrying value of our property and equipment or other long-lived assets to be held and used may not be recoverable. If such circumstances are determined to exist, we measure the recoverability of assets to be held and used by a comparison of the carrying amount of the asset or appropriate grouping of assets and the estimated undiscounted future cash flows expected to be generated by the assets. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated. The assets and liabilities of a disposed group or classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There have been </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1505-wk-Fact-5817AFAAD1C2D8BEE4DBA8A4146872D7" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" contextRef="FD2019Q4YTD" unitRef="usd" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> significant impairments of long-lived assets in any of the periods presented.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" id="TextSelection-9630A375511D06B9F6B4A8A414904E9D-0-wk-Fact-AD129EE99F927348903AA8A4146040C8" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">COSTS OF COMPUTER SOFTWARE</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We capitalize software development costs upon the establishment of technological feasibility and prior to the availability of the product for general release to customers. Software development costs primarily consist of personnel costs and rent for related office space. We capitalized approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1524-wk-Fact-C1B1CFF7C19270DE626211BCB7B16780" name="tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">4.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> of software development costs in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. We begin to amortize capitalized costs when a product is available for general release to customers. Amortization expense is determined on a product-by-product basis at a rate not less than straight-line basis over the product&#8217;s remaining estimated economic life of, generally, </span><span style="font-family:inherit;font-size:10pt;">five</span><span style="font-family:inherit;font-size:10pt;"> years. Amortization of software development costs was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1536-wk-Fact-929437769929DA2EDDFB11BDD3202E15" name="us-gaap:CapitalizedComputerSoftwareAmortization1" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">296,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, and is included in cost of software license revenue in the accompanying consolidated statements of comprehensive income. We have not capitalized any internal use software development costs in any of the periods presented.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessCombinationsPolicy" id="TextSelection-42C36DDE72B6CF00AA4B118FE0C4C080-0-wk-Fact-7F28BC62E3848D599385118FEEADBD23" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Contingent future cash payments related to acquisitions are recognized at fair value as of the acquisition date and included in the determination of the acquisition date purchase price. Subsequent changes in the fair value of the contingent future cash payments are recognized in earnings in the period that the change occurs.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-0-wk-Fact-3EFA57B20714D5DA5BDDA8A41434AE50" continuedAt="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash and cash equivalents, accounts receivables, accounts payables, short-term obligations and certain other assets at cost approximate fair value because of the short maturity of these instruments. The fair value of our revolving line of credit would approximate book value as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, because our interest rates reset approximately every 30 days or less. See Note 6 &#8211; &#8220;Revolving Line of Credit&#8221; for further discussion.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-14</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-8" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-9"><ix:continuation id="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-1" continuedAt="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1579-wk-Fact-4A4FFDA1CF98C55C8439A8A41464DBBF" name="us-gaap:PaymentsToAcquireHeldToMaturitySecurities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">81.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from </span><span style="font-family:inherit;font-size:10pt;">2020 through 2023</span><span style="font-family:inherit;font-size:10pt;">.&#160;We intend to hold these bonds to maturity and have classified them as such.&#160;We believe cost approximates fair value.&#160;The fair values of these securities are considered Level II as they are based on inputs from quoted prices in markets that are not active or from other observable market data. These investments are included in short-term investments and non-current investments and other assets.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1594-wk-Fact-F3A3A292FE9777B3B8E3A8A4146002A2" name="us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" contextRef="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">15.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> invested in convertible preferred stock representing a </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1598-wk-Fact-9907D684A616425A27F9A8A414685D96" name="tyl:CostMethodInvestmentOwnershipPercentage" contextRef="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember" unitRef="number" decimals="2" scale="-2" format="ixt:numdotdecimal">20</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings. The investment in convertible preferred stock is accounted under the cost method because we do not have the ability to exercise significant influence over the investee and the securities do not have readily determinable fair values. Our investment is carried at cost less any impairment write-downs. Our cost method investments are assessed annually for impairment. We do not reassess the fair value of cost method investments if there are no identified events or changes in circumstances that may have a significant adverse effect on the fair value of the investments. There has been </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48746316e1602-wk-Fact-93C0E4C7218610905615A8A4146436A3" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> impairment of our cost method investment for the periods presented. This investment is included in non-current investments and other assets in the accompanying consolidated balance sheets.</span></div></ix:continuation><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ConcentrationRiskCreditRisk" id="TextSelection-21ADB7788A6796AA873EA8A414908497-0-wk-Fact-A04FAE90FE8E44C50853A8A41464E958" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-2"></ix:continuation>CONCENTRATIONS OF CREDIT RISK </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents, accounts receivable from trade customers, and investments in marketable securities. Our cash and cash equivalents primarily consist of operating account balances and money market funds, which are maintained at several major domestic financial institutions and the balances often exceed insured amounts. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had cash and cash equivalents of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48746316e1624-wk-Fact-BC94A210F603B59DBF75A8A41468FFE7" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">232.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Concentrations of credit risk with respect to receivables are limited due to the size and geographical diversity of our customer base. Historically, our credit losses have not been significant. As a result, we do not believe we have any significant concentrations of credit risk as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LesseeLeasesPolicyTextBlock" id="TextSelection-69810B0DA45FDDBE5AEC11911DBDCEEB-0-wk-Fact-7A7F7BF30330DD5E690211912E2E4F29" escape="true"><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">LEASES</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We determine if an arrangement is a lease at inception. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, and operating lease liabilities, current and long-term, on our consolidated balance sheets. We currently do not have any finance lease arrangements. </span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Operating lease ROU assets and operating lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date of the lease in determining the present value of future payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives and initial direct costs incurred. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term. Leases with an initial term of 12 months or less are not recorded on the balance sheet; we recognize lease expense for these leases on a straight-line basis over the lease term. We have lease agreements with lease and non-lease components, which are generally accounted for as a single lease component. </span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:GuaranteesIndemnificationsAndWarrantiesPolicies" id="TextSelection-062F981ED2AA8198F521A8A414902508-0-wk-Fact-86317F5FE6B2EFCF7E61A8A414380C4C" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INDEMNIFICATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software license agreements indemnify our customers in the event that the software sold infringes upon the intellectual property rights of a third-party. These agreements typically provide that in such event we will either modify or replace the software so that it becomes non-infringing or procure for the customer the right to use the software. We have recorded no liability associated with these indemnifications, as we are not aware of any pending or threatened infringement actions that are possible losses. We believe the estimated fair value of these intellectual property indemnification clauses is minimal.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have also agreed to indemnify our officers and board members if they are named or threatened to be named as a party to any proceeding by reason of the fact that they acted in such capacity. We maintain directors&#8217; and officers&#8217; liability insurance coverage to protect against any such losses. We have recorded no liability associated with these indemnifications. Because of our insurance coverage, we believe the estimated fair value of these indemnification agreements is minimal.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-15</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-9" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-10"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="TextSelection-FD04F09885F5B3D1B35EA8A414903758-0-wk-Fact-85C78A72E19A3B18B0C5A8A414646B9D" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECLASSIFICATIONS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Certain amounts for previous years have been reclassified to conform to the current year presentation.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="TextSelection-781E37F17A4460A3236E119262D190C5-0-wk-Fact-0252FC8DC1F359EBA104119270C5C345" continuedAt="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-0" escape="true"><div style="line-height:120%;padding-bottom:16px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Leases.</span><span style="font-family:inherit;font-size:10pt;"> We adopted ASU No. 2016-02, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Leases</span><span style="font-family:inherit;font-size:10pt;"> ("Topic 842") using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of the lease arrangement. The impact of adoption is reflected in the financial information herein. For additional details, see Note 11 to our consolidated financial statements.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of ROU assets and operating lease liabilities, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and continue to have none as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="TextSelection-19B0C55F8C2323355D5811691F515495-0-wk-Fact-9D54F89EBAEF837215C811692C99D909" escape="true"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amounts recognized at January 1, 2019, for operating leases were as follow (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:589px;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:488px;"></td><td style="width:5px;"></td><td style="width:9px;"></td><td style="width:83px;"></td><td style="width:3px;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48746316e1778-wk-Fact-E6AF4CCFDABB4E4A1127117195D84293" name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,633</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1798-wk-Fact-F5A7F2176A40C8F6791E1171A8892C4E" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,344</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1824-wk-Fact-419C57E544B1377533A41171B730F1EC" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,405</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained earnings</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48746316e1855-wk-Fact-4E7A1211648EF18E7C8F1171C6AFE5C7" name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,116</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:continuation id="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-0" continuedAt="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">NEW ACCOUNTING PRONOUNCEMENTS</span></div></ix:continuation></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:16px;text-align:left;font-size:10pt;"><ix:continuation id="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-1" continuedAt="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-2"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-10" continuedAt="TextSelection-B5001BA8FA2924173161A8A41490A1C5-11"><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU 2016-13,&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Financial Instruments -&#160;Credit&#160;Losses,</span></ix:continuation></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-B429C181E2406CFFF4C61192C2E32CCE-2"><ix:continuation id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-11">&#160;(&#8220;ASU 2016-13&#8221;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#8217;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020. We have evaluated the impact of this standard on our consolidated financial statements, including accounting policies, processes and systems. Based on the nature of the Company's customer base and historical nature of losses, we do not expect the impact to be material upon adoption.</ix:continuation></ix:continuation>&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s9F475885909957198B85C91F685105DD"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:24px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(2)</span></div></td><td style="vertical-align:top;"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="TextSelection-10241DD29D4C64E68C08A8A414905174-0-wk-Fact-662E712556C25369E88BA8A4141C67EB" continuedAt="TextSelection-10241DD29D4C64E68C08A8A414905174-1" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ACQUISITIONS</span></div></ix:nonNumeric></td></tr></table><ix:continuation id="TextSelection-10241DD29D4C64E68C08A8A414905174-1" continuedAt="TextSelection-10241DD29D4C64E68C08A8A414905174-2"><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2019</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October&#160;30, 2019, we acquired certain assets of Courthouse Technologies, Ltd ("CHT"), an industry-leading provider of jury management systems that offers a fully integrated, end-to-end SaaS solution to manage all facets of juror management, from source list generation to juror processing and payment. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e587-wk-Fact-9C7DC8C39DB4B746A9AC11EE1E0EC0A3" name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">20.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> of which </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e591-wk-Fact-3D0EEF0E5DA793F71CE111EE94DEFC96" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">19.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> was paid in cash and approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e595-wk-Fact-543E40C28C0C1A3DD0AB11EEB7ACB52D" name="tyl:AccruedAcquisitionPurchasePrice" contextRef="I2019Q4Oct30_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> was accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 28, 2019, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">MP Holdings Parent, Inc. dba MicroPact</span><span style="font-family:inherit;font-size:10pt;"> ("MicroPact"), a leading provider of commercial off-the-shelf ("COTS") solutions, including entellitrak&#174;, a low-code application development platform for case management and business process management used extensively in the public sector. The total purchase price, net of cash acquired of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e606-wk-Fact-E0D30E88A9AF1C9BE5B811E17BB31E0D" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e610-wk-Fact-428B7EB8B14C4375B3AB11E1A4B349F0" name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">202.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> consisting of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e614-wk-Fact-BA147B6A0D656ECC5D3C11E1D66A26ED" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">198.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;paid in cash and accrued consideration of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e618-wk-Fact-01CDD932D9A5C1A07F2611E215A09EA1" name="us-gaap:BusinessCombinationContingentConsiderationLiability" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> contingent upon the achievement of certain financial performance objectives.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" id="TextSelection-ECCB017335DAC76BCBC511CDB5755263-0-wk-Fact-DFEA24A7097E642FA55C11CDC45F2CC2" continuedAt="TextSelection-ECCB017335DAC76BCBC511CDB5755263-1" escape="true"><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have performed a valuation analysis of the fair market value of MicroPact&#8217;s assets and liabilities. The following table summarizes the final allocation of the purchase price as of the acquisition date:</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-16</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-10241DD29D4C64E68C08A8A414905174-2" continuedAt="TextSelection-10241DD29D4C64E68C08A8A414905174-3"><ix:continuation id="TextSelection-ECCB017335DAC76BCBC511CDB5755263-1"><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:50.74074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:68%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:29%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">(In thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e683-wk-Fact-431110E47A4EF5043E1311D298ADD8EB" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,983</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e703-wk-Fact-4714AD405BF3AD1C95E411D2AB9D8A53" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,535</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e728-wk-Fact-4CE9C2CF0287C4D2971811D2C393D380" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,979</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e753-wk-Fact-5F55336FFD131DA9058111D2DB7802A5" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,417</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Identifiable intangible assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e778-wk-Fact-CFBFCB9296E7EB5C90EE11D3074C7241" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">136,143</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e803-wk-Fact-3C767E3B4DC757428E4611D3253D1781" name="us-gaap:Goodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747185e828-wk-Fact-8A4377028DE745271CD111D3BEF05298" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">602</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747185e854-wk-Fact-213E94CF34E0900E2FFE11D3C0FBF5DE" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,092</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747185e880-wk-Fact-5ABD5DF3643C8307459311D3C32A1950" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,879</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747185e906-wk-Fact-6BA13FA6898609A0435811D3C59169B6" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,510</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred tax liabilities, net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747185e933-wk-Fact-BBF59B09E600A132B98D11D3C828F809" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,125</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total consideration</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e964-wk-Fact-410E6BD07383A17C94E111D3C98AECA6" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">204,168</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with this transaction, we acquired total tangible assets of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e975-wk-Fact-616035B07DF381744CD611F5289F2C41" name="tyl:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">31.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and assumed liabilities of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e979-wk-Fact-7490C39AEC86EA7D6C0B11F57D28B833" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">27.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. We recorded goodwill of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e983-wk-Fact-736D236F525540B12B3511F64540131D" name="us-gaap:Goodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">76.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, none of which is expected to be deductible for tax purposes, and other identifiable intangible assets of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e987-wk-Fact-909BA00559447DA177212D35ABA4E507" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">136.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. The </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e991-wk-Fact-909BA00559447DA177212D35ABA4E507" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">136.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> of intangible assets are attributable to customer relationships, acquired software, trade name and favorable fair value of an operating lease and will be amortized over a weighted average period of approximately </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48747185e996-wk-Fact-1DBA6EACBA023B6E7FD911F5BC71B04D" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" format="ixt-sec:duryear">11</ix:nonNumeric> years</span></span><span style="font-family:inherit;font-size:10pt;">. We recorded deferred tax liabilities of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1000-wk-Fact-E92E9CCAF54AAC857F5111F60445B8F4" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">13.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> related to estimated fair value allocations. </span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The acquisition of MicroPact augments our product solutions, positions us in new practice areas such as health and human services, and presents opportunities to expand our business across new and complementary markets. We intend to expand our total addressable market through MicroPact's strong presence in the federal market. Therefore, the goodwill of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1007-wk-Fact-736D236F525540B12B3511F64540131D" name="us-gaap:Goodwill" contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">76.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> arising from this acquisition is primarily attributed to our ability to generate increased revenues, earnings and cash flow by expanding our addressable market and client base. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we recorded adjustments to the preliminary opening balance sheet attributed to changes in accounts receivable, deferred revenue, customer relationships, accrued expenses, working capital holdback and related deferred taxes resulting in a net decrease to goodwill of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1015-wk-Fact-144CBAC35825CC8DED9911F688F2FC92" name="us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">5.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessAcquisitionProFormaInformationTextBlock" id="TextSelection-00540B90A840F6385B6E11CE076402AA-0-wk-Fact-0A79D04839A75AFCDBBD11CE189867E7" escape="true"><div style="line-height:120%;padding-bottom:21px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following unaudited pro forma consolidated operating results information has been prepared as if the MicroPact acquisition had occurred at January 1, 2018, after giving effect to certain adjustments, including amortization of intangibles, interest, transaction costs and tax effects.</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.51851851851852%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"></td></tr><tr><td style="width:44%;"></td><td style="width:2%;"></td><td style="width:1%;"></td><td style="width:24%;"></td><td style="width:1%;"></td><td style="width:2%;"></td><td style="width:1%;"></td><td style="width:24%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Twelve Months Ended December 31,(unaudited)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1149-wk-Fact-B556F09364F6064E99E711DB53A063B9" name="us-gaap:BusinessAcquisitionsProFormaRevenue" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,098,226</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1168-wk-Fact-A10FD878E3CCC2CDF75C11DB53A580AE" name="us-gaap:BusinessAcquisitionsProFormaRevenue" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,009,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1188-wk-Fact-EBA702C287D53EB365CA11DB65DCD0FF" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,200</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1207-wk-Fact-4FE47B2DD777E838DB8D11DB65DFB312" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,998</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic earnings per share</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1237-wk-Fact-7E2CD92926F4B4C7BB8111DB82B3DE33" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.78</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1256-wk-Fact-39C911FF3E42C8682E1211DB8281BCBA" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.82</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1281-wk-Fact-5883A9DC6DE96642A33511DB9A1CC995" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747185e1300-wk-Fact-8129C72A162C73959CA011DB99D4B30D" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.66</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The pro forma information above does not include acquisitions that are not considered material to our results of operations. The pro forma information does not purport to represent what our results of operations actually would have been had such transaction occurred on the date specified or to project our results of operations for any future period.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 1, 2019, we acquired all the assets of Civic, LLC ("MyCivic"), a company that provides software solutions to connect communities. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1315-wk-Fact-EC6190F76654D3D9113011FCBBC1E41B" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2019Q1Feb1_us-gaap_BusinessAcquisitionAxis_tyl_CivicLLCMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocations for MicroPact and MyCivic are complete. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocation for CHT is not yet complete; therefore, the preliminary valuation estimates of fair value assumed at the acquisition date for intangible assets, receivables and deferred revenue and related deferred taxes are subject to change as valuations are finalized. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. Revenues from MicroPact included in Tyler's results of operations totaled approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1333-wk-Fact-910E9ACF6FC8BBEBCD36A8A41424E69D" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">63.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and the net loss was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1337-wk-Fact-FD41CBA10ED1DF21BD19A8A41428E1D6" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="0" sign="-" format="ixt:numdotdecimal">98,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> from the date of acquisition through </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. The impact of the MyCivic and CHT </span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-17</span></div></div><hr style="page-break-after:always"></hr><div></div><div><br/></div><ix:continuation id="TextSelection-10241DD29D4C64E68C08A8A414905174-3"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">acquisitions, individually and in the aggregate, on our operating results, assets and liabilities is not material. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we incurred fees of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1352-wk-Fact-C8BD4D46C0C244B2A8C111FE5CB75B87" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MicroPactAndMyCivicMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for financial advisory, legal, accounting, due diligence, valuation and other various services necessary to complete these acquisitions. These fees were expensed in 2019 and are included in selling, general and administrative expenses on the consolidated statement of comprehensive income.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our balance sheet as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, reflects the allocation of the purchase price to the assets acquired based on their fair value at the date of each acquisition. The fair value of the assets and liabilities acquired are based on valuations using Level III, unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the maximum aggregate amount of remaining contingent cash payments associated with our acquisitions is&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1370-wk-Fact-B97CA2D34E9DE393C78641A0878E5C33" name="us-gaap:BusinessCombinationContingentConsiderationLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;and are payable in fiscal year </span><span style="font-family:inherit;font-size:10pt;color:#000000;">2020</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2018</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 7, 2018, we acquired certain assets and intellectual property of&#160;SceneDoc, Inc., a company that provides mobile-first, SaaS field reporting for law enforcement agencies. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1384-wk-Fact-64F78C19E52AEBBD28F8A8A4142463EF" name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="D2018Q4Dec07_us-gaap_BusinessAcquisitionAxis_tyl_SceneDoc.Inc.Member" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 1, 2018, we acquired all of the equity interests of&#160;TradeMaster, Inc. dba MobileEyes, a company that develops SaaS software to improve public safety by supporting fire prevention and suppression, emergency response, and structural safety. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1391-wk-Fact-F9402DC53C8D88C24053A8A414282990" name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="D2018Q4oct1_us-gaap_BusinessAcquisitionAxis_tyl_TradeMasterInc.Member" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">5.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On August 31, 2018, we acquired all of the assets of CaseloadPRO, L. P., a company that provides a fully featured SaaS probation case management system. The purchase price of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1398-wk-Fact-81DE8AF625E9142BA01BA8A414280D1B" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2018Q3aug31_us-gaap_BusinessAcquisitionAxis_tyl_CaseloadPROLPMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">9.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On April 30, 2018, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">Socrata, Inc.</span><span style="font-family:inherit;font-size:10pt;">("Socrata"), a company that provides open data and data-as-a-service solutions including cloud-based data integration, visualization, analysis, and reporting solutions for state and local government agencies. The purchase price, net of cash acquired of  </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1409-wk-Fact-52D0FF094BF7490A79D912020D2F5BD0" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="I2018Q2april30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1413-wk-Fact-72D44EB2BB6140F6A824A8A414283554" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">147.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On April 30, 2018, we acquired all of the equity interests of </span><span style="font-family:inherit;font-size:10pt;">Sage Data Security, LLC</span><span style="font-family:inherit;font-size:10pt;">, a cybersecurity company offering a suite of services that supports an entire cybersecurity lifecycle, including program development, education and training, technical testing, advisory services, and digital forensics. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1434-wk-Fact-D36DD758345DE6EE1E89A8A41424E3EB" name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SageDataSecurityLLCMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">11.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> paid in cash. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2017</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">November&#160;29, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired audio and digital two-way radio communications technology and related assets from </span><span style="font-family:inherit;font-size:10pt;">Radio 10-33, LLC</span><span style="font-family:inherit;font-size:10pt;">. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1455-wk-Fact-13C55DB09F4690311AFEA8A4142479D6" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2017Q4NOV_us-gaap_BusinessAcquisitionAxis_tyl_Radio1033LLCMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">August&#160;2, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired substantially all of the assets and assumed certain liabilities of </span><span style="font-family:inherit;font-size:10pt;">Digital Health Department, Inc.</span><span style="font-family:inherit;font-size:10pt;">, a company that provides environmental health software, offering a SaaS solution for public health compliance and inspections processes. The total purchase price, net of debt assumed, was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1470-wk-Fact-DDBBC18AA109796F5283A8A4142C80D4" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2017Q3AUG_us-gaap_BusinessAcquisitionAxis_tyl_DigitalHealthDepartmentInc.Member" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">May&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">Modria.com, Inc.</span><span style="font-family:inherit;font-size:10pt;">, a company that specializes in online dispute resolution for government and commercial entities. The total purchase price, net of debt assumed, was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747185e1485-wk-Fact-797866C0D6C58EE7D7B5A8A414283630" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2017Q2MAY_us-gaap_BusinessAcquisitionAxis_tyl_Modria.comMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.</span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-18</span></div></div><hr style="page-break-after:always"></hr><div><a id="s90D2DD1B8C6159DEBF9D9D81A2079F59"></a></div><div></div><div><br/></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(3)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="TextSelection-2A67566BF471C3A023A9A8A41490F655-0-wk-Fact-009A21D7E30053136BA0A8A414789DC4" continuedAt="TextSelection-2A67566BF471C3A023A9A8A41490F655-1" escape="true"><span style="font-family:inherit;font-size:10pt;">PROPERTY AND EQUIPMENT, NET &#160;</span></ix:nonNumeric></div><ix:continuation id="TextSelection-2A67566BF471C3A023A9A8A41490F655-1"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="TextSelection-A5A5483391D1D735AECDA8A4149006D4-0-wk-Fact-5925847BB37401E006F7A8A414743F40" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11"></td></tr><tr><td style="width:65%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Useful</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Lives</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">(years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Land</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e696-wk-Fact-DFA4951C72633C78122AA8A413EE83D6" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,653</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e715-wk-Fact-B39EF09D7B9B20D8E4C1A8A413F23DDA" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,958</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Building and leasehold improvements</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5-39</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e744-wk-Fact-6A66651F12337CB87102A8A413EED6E8" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">137,448</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e763-wk-Fact-4C7511FEE655DFE7F085A8A413F6BE16" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">122,241</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Computer equipment and purchased software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e797-wk-Fact-C5BA1B2401D086F08F33A8A413F250DB" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">99,435</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e816-wk-Fact-110E2CC1118F9A5C62EBA8A413F20A96" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">84,649</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48747837e836-wk-Fact-CF3A30C3918396820ECCA8A413EEAF55" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" format="ixt-sec:duryear">5</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e850-wk-Fact-9BC3856903F3608ABA44A8A413F27FCB" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,506</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e869-wk-Fact-A550F4406D77FB3D8D67A8A413F64D3B" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,238</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Transportation equipment</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48747837e889-wk-Fact-36395ABB6E6C26F887C1A8A413EE85DC" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember" format="ixt-sec:duryear">5</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e903-wk-Fact-2076E054D072E570E034A8A413F26C9E" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">402</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e922-wk-Fact-A485D76C342B51CC1E0EA8A413F2BD06" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">438</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e957-wk-Fact-64E8D84B8433E2ED3E01A8A413F2384A" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">284,444</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e976-wk-Fact-D88101898E111CAB4F25A8A413EE6EB4" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">244,524</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated depreciation and amortization</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747837e1011-wk-Fact-9697A7DFA16A901101B0A8A413EE97AD" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">112,583</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48747837e1031-wk-Fact-4E5FAFA44446ED8C84E0A8A413F25A2F" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">89,347</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment, net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e1072-wk-Fact-956974638BE1AC793DF0A8A413F65492" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">171,861</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48747837e1091-wk-Fact-BA04C938D77311E9754AA8A414440441" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,177</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Depreciation expense was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1105-wk-Fact-11DA9C0C5FDC308342A1A8A41478513E" name="us-gaap:Depreciation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">23.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1113-wk-Fact-577531534CEA83010AADA8A414749C6E" name="us-gaap:Depreciation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">21.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1121-wk-Fact-ACB3F2E95B3FEFFFD305A8A41478A2BB" name="us-gaap:Depreciation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">17.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1133-wk-Fact-FC5419AB4857973115A92CEBFB0CB929" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">20.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1137-wk-Fact-D8DE56591680DAA7EB6E2CF00BEB3EAF" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for real estate and the expansion of existing buildings in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, we purchased an office building in Latham, New York for approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1156-wk-Fact-B93D3C31AD32B28981EFA8A41470CE13" name="us-gaap:PaymentsToAcquireBuildings" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and paid </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1160-wk-Fact-82BE15B4B80C6866E1B6A8A414741C8C" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for improvements to that building. We also paid </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48747837e1164-wk-Fact-EF048806C166E8164935A8A414749F20" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_YarmouthMaineMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">19.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for construction to expand our office building in Yarmouth, Maine.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s1088EC05D84B5CC6890BA9B87FBB7C73"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(4)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-0-wk-Fact-210EF28D615B7C802F46A8A413F2FDEA" continuedAt="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-1" escape="true"><span style="font-family:inherit;font-size:10pt;">GOODWILL AND OTHER INTANGIBLE ASSETS</span></ix:nonNumeric></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfGoodwillTextBlock" id="TextSelection-44FCD1F4865BC1061A32A8A414908207-0-wk-Fact-090B915EE6B966DAD3C4A8A413E1A851" escape="true"><ix:continuation id="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-1" continuedAt="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The changes in the carrying amount of goodwill for the two years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> are as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:63%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e691-wk-Fact-1B4B6DFE56163072E80E2FAB3CEA8B79" name="us-gaap:Goodwill" contextRef="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">651,430</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e710-wk-Fact-DCA628AA83E09B9FE2DE2FAB3CEA09AA" name="us-gaap:Goodwill" contextRef="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,557</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e729-wk-Fact-3F8E44B23EF4250828802FAB3CEA7EA2" name="us-gaap:Goodwill" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">657,987</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of Socrata</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e745-wk-Fact-069DFD48CE535A957F602FABA696BD5E" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,657</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e764-wk-Fact-4B73E152EB87CF9BEBE52FABA68DF120" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e783-wk-Fact-87C0C7D48085B375B4672FABA691BE6E" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,657</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e804-wk-Fact-C37415680D818551DAA42FABA69F8260" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,074</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e823-wk-Fact-2087272ABCFE775912D12FABA69BC2B8" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e842-wk-Fact-F39BAC747842BB22B73A2FABA6897194" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,074</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2018</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e863-wk-Fact-FB5E9B07A4D6E7C6EA902FABCF6B9026" name="us-gaap:Goodwill" contextRef="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">747,161</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e882-wk-Fact-59A2ACA9F8DE08B3E3992FABCF7AEFF0" name="us-gaap:Goodwill" contextRef="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,557</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e901-wk-Fact-3BDECAB71ABF01038FDAA8A414486727" name="us-gaap:Goodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">753,718</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of MicroPact</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e922-wk-Fact-6958AFA0C21F84E932C22FAC8964680C" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e941-wk-Fact-5BD125C8220410F37A772FAC895DF41B" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e960-wk-Fact-96D1762E7AFCB0F425B92FAC89619F33" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e981-wk-Fact-169E87BD5DC91872723F2FAC895497C7" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,080</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1000-wk-Fact-333BF7E1B185E94FE9942FAC897FA571" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1019-wk-Fact-D1CA69332BAD629780202FAC8950D008" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,080</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1045-wk-Fact-46480C985EDE6B332C102FABCF8C5C66" name="us-gaap:Goodwill" contextRef="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">833,560</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1064-wk-Fact-6CA34D603ED1BF6681162FABCF8E8188" name="us-gaap:Goodwill" contextRef="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,557</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1083-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F" name="us-gaap:Goodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,117</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-19</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-2"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="TextSelection-93B0765EB1451A5601B8A8A4149039A2-0-wk-Fact-CF4AD4C46377E45313A8A8A413F64181" continuedAt="TextSelection-93B0765EB1451A5601B8A8A4149039A2-1" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:12pt;"><ix:continuation id="TextSelection-93B0765EB1451A5601B8A8A4149039A2-1"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:77%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross carrying amount of other intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1210-wk-Fact-6D1A9614B9B45398A236A8A413FE67C5" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">321,019</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1229-wk-Fact-C867724F1B7EFA97FD8DA8A413FE8F71" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">238,219</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1244-wk-Fact-AF37BBB33AF767D5BE4EA8A41402C4C7" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">262,286</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1263-wk-Fact-396ED5174CB7028DFC85A8A413FEA89C" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">202,416</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1283-wk-Fact-E14BF786B0F3B575441FA8A413FE63BE" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,905</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1302-wk-Fact-41546A743C2246EAF281A8A413FE955B" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,905</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1322-wk-Fact-60BF1BF68AEE1EB4D0EE1B2360CA718A" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1341-wk-Fact-88638E3A88D17DCC023F1B2360B13B9E" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1361-wk-Fact-F40AFD455AF723522F3BA8A413FE1D7E" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,037</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1380-wk-Fact-FF7BB37D2FA59D5F3957A8A413FEBE8C" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,694</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1400-wk-Fact-F9C3083DCC99FF05428BA8A413FE051C" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">616,051</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1419-wk-Fact-99DB1A80C2EE6A98E3F6A8A41402BC23" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">461,234</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated amortization</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48750440e1439-wk-Fact-74E23A02925A00D27C32A8A414028A8B" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">237,137</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48750440e1459-wk-Fact-4EE609A6D697C1432717A8A414023957" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">184,382</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total other intangibles, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1485-wk-Fact-ED05E32393E8186CAB92A8A413F686D1" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">378,914</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1504-wk-Fact-445367394A1A9150FBB3A8A4146C26AC" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">276,852</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></ix:continuation><span style="font-family:inherit;font-size:12pt;">&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization expense for acquired software and capitalized software development costs are recorded to cost of revenues. Amortization expense for customer relationships and trade names are recorded to selling, general and administrative expenses. Total amortization expense for other intangibles was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e1519-wk-Fact-CCD2CC08C319AD068A59A8A4147C9252" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">52.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e1527-wk-Fact-E6E8A409781119313C07A8A413F63ECD" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">39.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e1535-wk-Fact-9105F5897D1AC4B368A9A8A41460F695" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">35.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.&#160;</span></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The amortization periods of other intangible assets is summarized in the following table<ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" id="TextSelection-00A662DBCD705E2834D4A8A41490E0DA-0-wk-Fact-822831C2BDE8682D3495A8A4147C3D9D" continuedAt="TextSelection-00A662DBCD705E2834D4A8A41490E0DA-1" escape="true">:</ix:nonNumeric></span><ix:continuation id="TextSelection-00A662DBCD705E2834D4A8A41490E0DA-1"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="22"></td></tr><tr><td style="width:35%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e1959-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F" name="us-gaap:Goodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,117</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2012-wk-Fact-3BDECAB71ABF01038FDAA8A414486727" name="us-gaap:Goodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">753,718</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2172-wk-Fact-6D1A9614B9B45398A236A8A413FE67C5" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">321,019</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2191-wk-Fact-4D363C21717D6919C066A8A4147C4A5C" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" format="ixt-sec:duryear">16</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2205-wk-Fact-627DE63B52066CEA8AFAA8A4143CB7E7" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">97,320</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2225-wk-Fact-C867724F1B7EFA97FD8DA8A413FE8F71" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">238,219</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2244-wk-Fact-966DF7B0515F05AC2838A8A4143C8079" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" format="ixt-sec:duryear">15</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2258-wk-Fact-1F93BBED06C9C1E4F2B1A8A41438DE71" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">78,120</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2278-wk-Fact-AF37BBB33AF767D5BE4EA8A41402C4C7" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">262,286</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2297-wk-Fact-B4C749A4A7ECC23F9103A8A4143C65AA" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" format="ixt-sec:duryear">7</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2311-wk-Fact-ECDF0CA3F86C046A8E8AA8A41434C04D" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,416</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2331-wk-Fact-396ED5174CB7028DFC85A8A413FEA89C" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">202,416</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2350-wk-Fact-4BC05620ECD799B9B2D1A8A41438C7EA" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" format="ixt-sec:duryear">7</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2364-wk-Fact-D893B447CC3B2E7C4080A8A41438115E" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">99,772</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2384-wk-Fact-E14BF786B0F3B575441FA8A413FE63BE" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,905</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2403-wk-Fact-2EE7B85BD0D54159C0D2A8A4143CD16B" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" format="ixt-sec:duryear">11</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2417-wk-Fact-A56DE878BDD25727E8C1A8A4143C619A" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,205</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2437-wk-Fact-41546A743C2246EAF281A8A413FE955B" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,905</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2456-wk-Fact-989A871B89E5281833D9A8A41438E3CE" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" format="ixt-sec:duryear">11</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2470-wk-Fact-E85EA0080DD7C2757C7BA8A4147C150C" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,139</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2495-wk-Fact-60BF1BF68AEE1EB4D0EE1B2360CA718A" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2509-wk-Fact-6213A5F1A6A806F20C5739E948306FC6" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" format="ixt-sec:duryear">5</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2528-wk-Fact-5576D7B8EAB65FF727ED39E95DA506DE" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">296</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2548-wk-Fact-88638E3A88D17DCC023F1B2360B13B9E" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2581-wk-Fact-D38E2F7A9BDEAD5BFF2939E95DA95760" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2596-wk-Fact-F40AFD455AF723522F3BA8A413FE1D7E" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,037</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2615-wk-Fact-7F1C09F9DB60D1644FBEA8A4143CFD23" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" format="ixt-sec:duryear">9</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2629-wk-Fact-9A35E7A5F964CA8831D4A8A414380D70" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,900</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2649-wk-Fact-FF7BB37D2FA59D5F3957A8A413FEBE8C" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,694</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48750440e2668-wk-Fact-517946BDCA4A20926D3FA8A4147CF42E" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" format="ixt-sec:duryear">10</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2682-wk-Fact-CCC55BA898DD234465BBA8A4143CB112" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,351</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></ix:continuation></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense related to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2707-wk-Fact-F5EF796E8F5FF3AF3603A8A4147C055F" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">525,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2715-wk-Fact-25C1703E383F4DB5E049A8A413EA8EA7" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">525,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2021</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2723-wk-Fact-B72D7024CFBFCBAC9F87A8A413EA6BE9" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">525,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2022</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2732-wk-Fact-CAE7001774E86F1A59F9A8A413F245A3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">525,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2023</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2740-wk-Fact-F3AEF4B78FD38BE4452BA8A413F67706" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">525,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2024</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750440e2748-wk-Fact-5566D9A0A3D463D8217FA8A413F2A6FB" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">512,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> thereafter</span><span style="font-family:inherit;font-size:9pt;">. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="TextSelection-9E3BBDECC623637F39C7A8A41490876D-0-wk-Fact-2C0D52AF5300D68EE19DA8A413E5D237" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs is as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:62.77777777777778%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:86%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2787-wk-Fact-F609A583A4878BFE68C4A8A4144CBE03" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">54,045</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2802-wk-Fact-E739E3971CB927AB0F42A8A4144CEBB9" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,687</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2822-wk-Fact-0EC1C5A83296B7460AD0A8A4144C2E5A" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,989</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2842-wk-Fact-4B12BD1FE2986BEAF81CA8A4144CA7B4" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,838</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2862-wk-Fact-0AE71CEDF45025F733F8A8A4144C39CD" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,213</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750440e2887-wk-Fact-EFE8AB3D7B8C77D6235EA8A4144CE246" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,005</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-20</span></div></div><hr style="page-break-after:always"></hr><div><a id="sB4BA83944D0E5235AF77AEAE4B070DCE"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(5)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="TextSelection-AB686FCDFEB26726A1D0A8A414908B45-0-wk-Fact-5C93B68EF3045B0A2FA4A8A414483AE5" continuedAt="TextSelection-AB686FCDFEB26726A1D0A8A414908B45-1" escape="true"><span style="font-family:inherit;font-size:10pt;">ACCRUED LIABILITIES</span></ix:nonNumeric></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="TextSelection-087DD963B7D898AE06E4A8A41490F851-0-wk-Fact-2BEE53824E00ED088A29A8A4144899BF" escape="true"><ix:continuation id="TextSelection-AB686FCDFEB26726A1D0A8A414908B45-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:71%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:12%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued wages, bonuses and commissions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e658-wk-Fact-E907023E0CEB8020DB34A8A4140A4D78" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,126</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e677-wk-Fact-777A41A2E016DB118FFAA8A4140AF224" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e692-wk-Fact-B607A36F80F54BB431D2A8A4140A4637" name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">26,108</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e711-wk-Fact-E20AE6FCFC26D18164A5A8A4140A5B9B" name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">26,380</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e736-wk-Fact-0C8B9460C27847D09583A8A414744443" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,234</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48750800e755-wk-Fact-603BC66574C110E7A142A8A41460AFDA" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">66,480</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s6E8B013349F654E196677EDEF7A45312"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(6)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DebtDisclosureTextBlock" id="TextSelection-A23CF85DCD6654639FE8A8A41490EEDD-0-wk-Fact-725C4BA6647A2AE1306BA8A413EAD0BB" continuedAt="TextSelection-A23CF85DCD6654639FE8A8A41490EEDD-1" escape="true"><span style="font-family:inherit;font-size:10pt;">REVOLVING LINE OF CREDIT</span></ix:nonNumeric></div><ix:continuation id="TextSelection-A23CF85DCD6654639FE8A8A41490EEDD-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2019</span><span style="font-family:inherit;font-size:10pt;">, we entered into a </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e588-wk-Fact-2F687E9EF25E76073C9FA8A413EAAA2E" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="INF" scale="6" format="ixt:numdotdecimal">400</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> credit agreement (the &#8220;Credit Facility&#8221;) with the various lenders party thereto and Wells Fargo Bank, National Association, as Administrative Agent. The Credit Agreement provides for an unsecured revolving credit facility in an aggregate principal amount of up to&#160;$</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e592-wk-Fact-2F687E9EF25E76073C9FA8A413EAAA2E" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="INF" scale="6" format="ixt:numdotdecimal">400.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, including a </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e596-wk-Fact-D4F9C17EC69859F00137A8A413EA733E" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_ShortTermDebtTypeAxis_us-gaap_LetterOfCreditMember" unitRef="usd" decimals="INF" scale="6" format="ixt:numdotdecimal">25.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> sublimit for letters of credit. The Credit Facility matures on </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2024</span><span style="font-family:inherit;font-size:10pt;">. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Borrowings under the Credit Facility bear interest at a rate of either (1) Wells Fargo Bank&#8217;s&#160;prime rate (subject to certain higher rate determinations) plus a margin of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e609-wk-Fact-619464CA133802366678A8A413EAF74B" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">0.125</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e613-wk-Fact-D62B768B756B888A8AA4A8A413EADB45" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">0.75</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e617-wk-Fact-2D82273E2F4DBB247820A8A413EE2169" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">1.125</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e621-wk-Fact-3281CBC24E7AB8DA94B7A8A413EAF12B" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">1.75</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">.&#160; As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our interest rate was </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e633-wk-Fact-A83E535CD4B30C4FC5FAA8A413EA77E9" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">4.88</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> under the prime rate option or approximately </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e637-wk-Fact-189FF35998F6CF2C8F13A8A413EA042E" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember" unitRef="number" decimals="4" scale="-2" format="ixt:numdotdecimal">2.89</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> under the 30-day LIBOR option. The Credit Facility requires us to maintain certain financial ratios and other financial conditions and prohibits us from making certain investments, advances, cash dividends or loans, and limits incurrence of additional indebtedness and liens. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we were in compliance with those covenants</span><span style="font-family:inherit;font-size:10pt;color:#ff0000;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e654-wk-Fact-47EF9B90BE75C29D49B2A8A413EE402B" name="us-gaap:LongTermLineOfCredit" contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings and had unused borrowing capacity of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e658-wk-Fact-A6168A4E0B800882A363A8A413EE844B" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="-6" scale="6" format="ixt:numdotdecimal">400</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> under the Credit Facility</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">.</span><span style="font-family:inherit;font-size:10pt;"> In addition, as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48750535e671-wk-Fact-892AF08EE5839A35016BA8A413E51F3F" name="tyl:NumberofOutstandingLetterofCredit" contextRef="FD2019Q4YTD" unitRef="letters_of_credit" decimals="INF" scale="0" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> outstanding letter of credit.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid interest of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e678-wk-Fact-B3C44338E66697E8F39AA8A413EE71F5" name="us-gaap:InterestPaidNet" contextRef="FD2019Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">1,750,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e686-wk-Fact-960842D4E1E12FF41BB6A8A413EE2644" name="us-gaap:InterestPaidNet" contextRef="FD2018Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">770,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48750535e694-wk-Fact-F826B53FF0650CFD4894A8A413EAA47C" name="us-gaap:InterestPaidNet" contextRef="FD2017Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember" unitRef="usd" decimals="-3" scale="0" format="ixt:numdotdecimal">804,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s29EB9637C191522983B8D9F6DA0F547E"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(7)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:IncomeTaxDisclosureTextBlock" id="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-0-wk-Fact-72ACD300175F13D1B8F9A8A41418F91D" continuedAt="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-1" escape="true"><span style="font-family:inherit;font-size:10pt;">INCOME TAX </span></ix:nonNumeric></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="TextSelection-7E29720196E86F2E8FECA8A414944962-0-wk-Fact-3412DE1237C69572ABB8A8A4141835DF" escape="true"><ix:continuation id="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-1" continuedAt="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The </span><span style="font-family:inherit;font-size:10pt;">Income tax provision (benefit)</span><span style="font-family:inherit;font-size:10pt;"> on income from operations consists of the following:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Current:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e811-wk-Fact-2B00A85514FE8E1A3DF1A8A41417E58B" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,814</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e830-wk-Fact-0575C73DF75EF08D19BAA8A41418298A" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,110</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e849-wk-Fact-1524AFB84187C28B5922A8A41412A20D" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,883</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e865-wk-Fact-D32BCC08245ABBC4E42AA8A41412783D" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,585</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e884-wk-Fact-CD299E49FCA36C08C4D0A8A4140ECD6D" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,367</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e903-wk-Fact-46BEF5B19A204BD38298A8A41412515D" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,666</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e924-wk-Fact-9B248A5B96535076EFF9A8A414122847" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,399</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e943-wk-Fact-02A29CC0EC04CCF6B764A8A4140ECDDB" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,477</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e962-wk-Fact-260CF753A3A17FA3793EA8A41412E6A5" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,549</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e983-wk-Fact-233FBB96D5386B99336EA8A414023908" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,088</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1003-wk-Fact-DF8D9632546CC2F32587A8A41428077F" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,069</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1023-wk-Fact-04C2B2FDC17E67C3ED11A8A4142CBF29" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">33,664</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1050-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,311</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1069-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,408</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1088-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,115</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-21</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-2" continuedAt="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-3"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="TextSelection-A18ED841E9800B17B281A8A4149472B4-0-wk-Fact-D706A01DD280B29CEA08A8A41417D83F" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal income tax expense at statutory rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1266-wk-Fact-72D5BB776A9E593BB354A8A4142C7AF0" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">33,566</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1285-wk-Fact-78B4A9C54EE44223DFA5A8A414249F87" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,733</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1304-wk-Fact-6CEAED80B5411F4D18A1A8A414285926" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">57,209</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State income tax, net of federal income tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1320-wk-Fact-E85AB287BD2C275663EAA8A41428BAF9" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1339-wk-Fact-DE3ECF4B64D5754DC6E6A8A4142897AB" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,953</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1358-wk-Fact-51C18B0C00B6D8DCA3AAA8A414285BD6" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,754</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Domestic production activities deduction</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1379-wk-Fact-A4BEE152A03344156EC1A8A41428185A" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1398-wk-Fact-9EE3984737F61524445FA8A4142CEE71" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1417-wk-Fact-3737A53FBBE7F275CCB0A8A41428A072" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,617</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefits related to stock option exercises</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1439-wk-Fact-67CFB50BD29D232D5CBFA8A4142CDDBD" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">29,819</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1459-wk-Fact-421F06E8955089AC1652A8A414246576" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">32,487</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1479-wk-Fact-85572384C583FF49B1BCA8A41428FB64" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">40,624</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax Act adjustments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1501-wk-Fact-B9F71729185BCDBAE840A8A4141755A2" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1520-wk-Fact-592FD10A3AA7323D9194A8A41416326C" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,750</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1540-wk-Fact-B936B7F448A7F653EFD0A8A41424B9DB" name="tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">25,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax credits</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1562-wk-Fact-4FE2CF8C8EC930D109F8A8A414282D2E" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,446</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1582-wk-Fact-30CA09C43502D44CCE8DA8A414246ABE" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,715</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1602-wk-Fact-498DBFFA777E6F6E5C40A8A4142C0A73" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,578</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-deductible business expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1624-wk-Fact-F033C20CDFF69B6AC113A8A4142413E0" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,011</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1643-wk-Fact-2F8F82FC54E20B26D273A8A4142CE035" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,655</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1662-wk-Fact-4F7C36CFA87A803721EAA8A4142CDE1C" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,573</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other, net</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1683-wk-Fact-2F3CD0C6D9FC16F74EBAA8A41428F93A" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1702-wk-Fact-A9EB8EE3C02903EC8440A8A414286AE8" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1721-wk-Fact-21F00BD018925A706C68A8A414245181" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">160</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1747-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,311</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1766-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,408</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e1785-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,115</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="TextSelection-F5504A75C957E1B48E0CA8A41494B774-0-wk-Fact-D8C8CDC804B82E87E27BA8A414123B4B" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:77%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax assets:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating expenses not currently deductible</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1917-wk-Fact-295346E222CDA9CFBA7FA8A4146C7861" name="tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,214</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1936-wk-Fact-BE92984E179BD44F95D6A8A414702397" name="tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,989</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option and other employee benefit plans</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1951-wk-Fact-0A70FFBE0400C534C200A8A41470DCB9" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,308</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1970-wk-Fact-CDCE294C051C53583D9CA8A4146C7DAE" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Loss and credit carryforwards</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e1990-wk-Fact-2352EA4DC1802C94F647A8A4146CD7DD" name="tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,841</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e2009-wk-Fact-C0CA7CCC524B89FE2435A8A4146C26D0" name="tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e2029-wk-Fact-AE3D60AAAC5EE3D3811EA8A41470F519" name="us-gaap:DeferredTaxAssetsGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,363</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e2048-wk-Fact-7519D1A6165B03CCC6B7A8A4146C2DF1" name="us-gaap:DeferredTaxAssetsGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">46,484</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2068-wk-Fact-AA9C9DAD6B752443AEB5A8A4146CB038" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,923</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2088-wk-Fact-83A20345829140676DF1A8A41470A981" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,049</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets, net of valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e2109-wk-Fact-41C040F8E9008B69C209A8A41470AFF3" name="us-gaap:DeferredTaxAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">51,440</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48752911e2128-wk-Fact-B240D909B1FA88A9F03AA8A4146C9109" name="us-gaap:DeferredTaxAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">45,435</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax liabilities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intangible assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2230-wk-Fact-D43F0429E571FEE0A3B7A8A4147089E6" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">84,019</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2250-wk-Fact-8CFDE9067F5CB01E918AA8A414708442" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">70,752</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2272-wk-Fact-F8B63C7E80F449F17892A8A4146CCB63" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,265</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2292-wk-Fact-8F5D14651EE86E4A1169A8A4146C04F2" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,455</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Prepaid expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2313-wk-Fact-C7751275189FF658F7AAA8A41470A427" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,922</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2333-wk-Fact-90CCCD0D23C4AF4EB6DFA8A41470A266" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,079</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2354-wk-Fact-F8FE9B4C6CF36BF7B1E5A8A41470A18E" name="us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,676</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2374-wk-Fact-1AFADC64648AAC9A4D9AA8A41470C5F2" name="us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,940</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2395-wk-Fact-E2950E918052394EB8EDA8A414706A48" name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">99,882</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2415-wk-Fact-C6CD30947737EB1B8193A8A414703BA5" name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,226</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net deferred income tax liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2441-wk-Fact-CB5F9D12E5A730BE61D3A8A41470577F" name="us-gaap:DeferredTaxLiabilities" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">48,442</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48752911e2461-wk-Fact-C9681FE071EC9D6DEEE4A8A4146CD433" name="us-gaap:DeferredTaxLiabilities" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">41,791</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:Times New Roman;font-size:10pt;color:#000000;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had federal net operating loss carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2480-wk-Fact-F4CD7A30645FCDDFD459A8A414120C7C" name="us-gaap:OperatingLossCarryforwards" contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">85.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, after-tax state net operating loss carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2484-wk-Fact-B6DD1B3E8AE0514FBE934170B6B44E9C" name="us-gaap:OperatingLossCarryforwards" contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, and tax credit carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2488-wk-Fact-B4642372AA7892F87E0441719E7CB935" name="us-gaap:TaxCreditCarryforwardAmount" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">4.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">.  The federal net operating loss carryforward will begin to expire in 2032 if not utilized, and a portion of the state net operating loss and tax credit carryforwards begin expiring in 2020 if not utilized.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The acquired carryforwards are subject to an annual limitation but are expected to be realized with the exception of certain state net operating loss and tax credit carryforwards.  The valuation allowance disclosed in the table above relates to state net operating losses and tax credit carryforwards that are likely to expire before utilization.  We believe it is more likely than not that all other deferred tax assets will be realized. However, the amount of the deferred tax asset considered realizable could be adjusted in the future if estimates of reversing taxable temporary differences are revised.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with the acquisition of Socrata in 2018, we recorded a </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2500-wk-Fact-A03FA6C083B537DF1AE5A8A41412D9EB" name="us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> liability for an uncertain tax position associated with acquired tax credit carryforwards. The unrecognized tax benefits are included in deferred income taxes in our consolidated balance sheets. The entire amount, if recognized, would affect the effective tax rate.  There was no change in the balance of unrecognized tax benefits during </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">.  Based on the information currently available, we do not anticipate a significant increase or decrease to our tax contingencies for these issues for the next 12 months.</span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-22</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-3"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are subject to U.S. federal income tax, as well as income tax of multiple state, local and foreign jurisdictions. We are routinely subject to income tax examinations by these taxing jurisdictions, but we do not have a history of, nor do we expect any material adjustments as a result of these examinations.  With few exceptions, major U.S. federal, state, local and foreign jurisdictions are no longer subject to examination for years before 2015.  As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, no significant adjustments have been proposed by any taxing jurisdiction.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid income taxes, net of refunds received, of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2525-wk-Fact-91D2F0887D42B78E449BA8A4141232DB" name="us-gaap:IncomeTaxesPaidNet" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">21.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2533-wk-Fact-BC93637875F1A49BC764A8A4141637CF" name="us-gaap:IncomeTaxesPaidNet" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48752911e2541-wk-Fact-2A0D84BB5E69BFF2AD54A8A41418827A" name="us-gaap:IncomeTaxesPaidNet" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">36.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sDBF65CCEB6E85A82A79AEFE5A4BC240C"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(8)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="TextSelection-7FE8A9107A978DBF8DAFA8A414941E26-0-wk-Fact-0934FE390379A7AD0243A8A413FA5137" continuedAt="TextSelection-7FE8A9107A978DBF8DAFA8A414941E26-1" escape="true"><span style="font-family:inherit;font-size:10pt;">SHAREHOLDERS&#8217; EQUITY</span></ix:nonNumeric></div><ix:continuation id="TextSelection-7FE8A9107A978DBF8DAFA8A414941E26-1"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfStockholdersEquityTableTextBlock" id="TextSelection-C17D4CAE0AE9FDCB48DAA8A4149448A6-0-wk-Fact-A4523B1B1102C4AB2E8DA8A413FABAF7" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table details activity in our common stock:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="21"></td></tr><tr><td style="width:35%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="20" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option exercises</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e943-wk-Fact-66A6D7B4DD6FF7039E1F1B82E87DC5E0" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e962-wk-Fact-BB00C5D3B67C7629EBDCA8A414343064" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">96,908</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e976-wk-Fact-01CA83F48ACF6CBCABD5A8A4142C3402" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,126</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e996-wk-Fact-AE38038BB58589E8B718A8A4143452CC" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">74,907</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1010-wk-Fact-A264F44F0CC63AA7E546A8A4142CFD5B" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,113</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1029-wk-Fact-22D5F1AA9D4A31160287A8A41424BEB1" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,845</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchases of common stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1044-wk-Fact-151E933AB2508FE99D06A8A4142CB9A5" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">72</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1059-wk-Fact-86CD06ECA10567DA01F3A8A4143462BF" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,289</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1079-wk-Fact-F220ED4106B7EC30065CA8A414286A6B" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1095-wk-Fact-1FCC20A5B75088524C85A8A41418E545" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">150,050</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1115-wk-Fact-C3CCDE78839870A46C5BA8A4142878EC" name="us-gaap:TreasuryStockSharesAcquired" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">44</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1130-wk-Fact-7532671C68CAEB127061A8A414187D5D" name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,613</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Employee stock plan purchases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1151-wk-Fact-3EA479B4971EF1BB11BDA8A41428DEBC" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1165-wk-Fact-61E43DB65B80D63B215BA8A414247AFE" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,576</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1184-wk-Fact-0EF792E3DDCD8752FDFBA8A4142CE70B" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">45</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1199-wk-Fact-71D4983CED9ED71F20E0A8A4143C1521" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,051</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1218-wk-Fact-92CEA96CF636375731F7A8A4142867A2" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1232-wk-Fact-335CD0EC08D6891C8C0FA8A414180718" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,044</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Restricted stock units vested, net of withheld shares upon award settlement</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1252-wk-Fact-28084431499679C76B8E1B8329450ABB" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48753869e1266-wk-Fact-6D770BA821A3BEFF247C2CF92729A434" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,361</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1286-wk-Fact-9389F023A7107A5B8F2D1B836E82BA8F" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1301-wk-Fact-F430D86451B24DC1636B1B83886BAE86" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1320-wk-Fact-DC1817E6834B6B9CDA551B836E5DA7FF" name="tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48753869e1334-wk-Fact-08764A41F36ADBA3D7891B83884CB83B" name="tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, we had authorization from our board of directors to repurchase up to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48753869e1357-wk-Fact-8A7A551AF0ACDC962ACFA8A413FAF603" name="us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" contextRef="I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">2.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> additional shares of our common stock.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s3CA8C1F084D05073B084D05FDA09FA8F"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(9)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="TextSelection-1469E4AC18D90AB39607A8A414941F0B-0-wk-Fact-52829EC4DF0825B9FFEEA8A413F65141" continuedAt="TextSelection-1469E4AC18D90AB39607A8A414941F0B-1" escape="true"><span style="font-family:inherit;font-size:10pt;">SHARE-BASED COMPENSATION</span></ix:nonNumeric></div><ix:continuation id="TextSelection-1469E4AC18D90AB39607A8A414941F0B-1" continuedAt="TextSelection-1469E4AC18D90AB39607A8A414941F0B-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Compensation Plan</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In May 2018, stockholders approved the Tyler Technologies, Inc. 2018 Stock Incentive Plan ("the 2018 Plan") which amended and restated the existing Tyler Technologies, Inc. 2010 Stock Option Plan ("the 2010 Plan"). Upon stockholder approval of the 2018 Plan, the remaining shares available for grant under the 2010 Plan were added to the shares authorized for grant under the 2018 Plan. Additionally, any awards previously granted under the 2010 Plan that expire unexercised or are forfeited are added to the shares authorized for grant under the 2018 Plan.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During fiscal year&#160;</span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we granted stock awards under the 2018 Plan in the form of stock options, restricted stock units and performance share units. Stock options generally vest after </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48757553e598-wk-Fact-F8C48747F4367E78C6C8A8A413F2D224" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">six years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant and have a contractual term of&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48757553e602-wk-Fact-24DC000EE1A9EE82D0FCA8A414688F4E" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">10</ix:nonNumeric> years</span></span><span style="font-family:inherit;font-size:10pt;">. Once options become exercisable, the employee can purchase shares of our common stock at the market price on the date we granted the option. Restricted stock unit grants generally vest ratably over&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48757553e611-wk-Fact-9536FC73F3E1B343B3C2A8A41434A668" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Stock Compensation</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e626-wk-Fact-794C358E8618335BDCB8A8A413F61987" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="FI2019Q4" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">3.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future grants under the plan from the </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e630-wk-Fact-1B24CA713F80F47F8C24A8A413F26949" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" contextRef="FI2019Q4" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">22.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares previously approved by the shareholders.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Determining Fair Value of Stock Compensation</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Valuation and Amortization Method. We estimate the fair value of stock option awards granted using the Black-Scholes option valuation model. For restricted stock unit and performance stock unit awards, we amortize the fair value of all awards on a straight-line basis over the requisite service periods, which are generally the vesting periods.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Life. The expected life of awards granted represents the period of time that they are expected to be outstanding. The expected life represents the weighted-average period the stock options are expected to be outstanding based primarily on the options&#8217; vesting terms, remaining contractual life and the employees&#8217; expected exercise based on historical patterns.</span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-23</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-1469E4AC18D90AB39607A8A414941F0B-2" continuedAt="TextSelection-1469E4AC18D90AB39607A8A414941F0B-3"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Volatility. Using the Black-Scholes option valuation model, we estimate the volatility of our common stock at the date of grant based on the historical volatility of our common stock.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Risk-Free Interest Rate. We base the risk-free interest rate used in the Black-Scholes option valuation model on the implied yield currently available on U.S. Treasury zero-coupon issues with an equivalent remaining term equal to the expected life of the award.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Dividend Yield. We have not paid any cash dividends on our common stock in more than ten years and we do not anticipate paying any cash dividends in the foreseeable future. Consequently, we use an expected dividend yield of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e652-wk-Fact-7BE0B012D846F67C4A5FA8A413EEA3F2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" contextRef="FD2019Q4YTD" unitRef="number" decimals="INF" scale="-2" format="ixt-sec:numwordsen">zero</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> in the Black-Scholes option valuation model.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Forfeitures. We use historical data to estimate pre-vesting option forfeitures. We record share-based compensation only for those awards that are expected to vest.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="TextSelection-A5855738638A800146E0A8A41494D000-0-wk-Fact-4B1BE66016E23F32F782A8A413F2F050" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following weighted average assumptions were used for options granted:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"></td></tr><tr><td style="width:65%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected life (in years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48757553e788-wk-Fact-AF85D5AE14FF86FB122CA8A414787DA1" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">6.0</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48757553e802-wk-Fact-232C72B0FF3F1999E47FA8A414782539" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">6.0</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48757553e816-wk-Fact-0D7D1F7DE6E44E1D6C1CA8A4147877D7" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">6.0</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected volatility</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e831-wk-Fact-C0AFD8782730DEC527DCA8A4147C192D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">26.6</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e846-wk-Fact-A353A400925BBB2CD8ACA8A414788A37" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">26.7</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e861-wk-Fact-B045D6988A428C952983A8A414788F34" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">28.1</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Risk-free interest rate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e877-wk-Fact-E8932B006A9E98540186A8A4147819CC" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">1.8</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e892-wk-Fact-4A6B64F3F99D1DE64321A8A41478ECC3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">2.7</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e907-wk-Fact-FEBFEF7A165438D4E977A8A4147871E0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">2.0</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected forfeiture rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e923-wk-Fact-937FCA6E53A0331F375CA8A4147C6022" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e938-wk-Fact-B4A1180713DEE4622D12A8A4147854E9" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e953-wk-Fact-8DDA818A81E7F9CF642CA8A414780365" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="number" decimals="3" scale="-2" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Award Activity</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" id="TextSelection-12B936B8D9E8BE5D516FA8A41494D5B4-0-wk-Fact-0740E945AB1174A85956A8A413F2A4CF" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> (shares in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:60%;"></td><td style="width:1%;"></td><td style="width:18%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:17%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted Average Grant Date Fair Value per Share</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at January 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1051-wk-Fact-4503563DA76775507AE4A8A4143070E1" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1070-wk-Fact-74036D17071C8E6AA02DA8A41430DC05" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1090-wk-Fact-5209677BEEAA442FA2B2A8A414301F5F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">336</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1104-wk-Fact-91737510EC9892D2F112A8A414308A5F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">221.29</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1129-wk-Fact-B7322AB4244ADD9409CFA8A414302225" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1143-wk-Fact-B8F396E9508FBA5FFBA1A8A41430B80E" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1168-wk-Fact-E64878F3A1DDA7EFBBB2A8A41430C438" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">2</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1183-wk-Fact-592D0688753FBADE38C6A8A4143022A4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">229.75</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1208-wk-Fact-7E53FDA8FBFEA2EC5256A8A41434581B" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">334</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1222-wk-Fact-8038E5BBD6010842450DA8A41430946D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">221.25</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1247-wk-Fact-380A54F027EE2040C1531B8DAD39A3EB" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">256</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1261-wk-Fact-D359213C0F916D25C2451B8DAFF7E554" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">241.19</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1286-wk-Fact-8AF676CB4B0AB2E373881B8DB23BFD3C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">76</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1301-wk-Fact-380422D9AEF8CD897ACB1B8DB5D85F38" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">221.15</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1326-wk-Fact-9763D309900F273116131B8DB7FD4C50" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">14</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1341-wk-Fact-9C1A09F8F0C7B1710F671B8DBBE976F7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">229.75</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1366-wk-Fact-249809D0B47A3D73A2531B8DBE2621E3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">500</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1385-wk-Fact-33EFED7081378B0CA1F11B8DC1677629" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">231.57</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-24</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-1469E4AC18D90AB39607A8A414941F0B-3"><ix:continuation id="TextSelection-04CBDCFDF9DA831DD9BFA8A4149490E9-0"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:53%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average Exercise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Contractual Life</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(Years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intrinsic Value</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2016</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1522-wk-Fact-D0F22104238D8E78C207A8A4144C25EA" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2016Q4" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">5,156</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1541-wk-Fact-BD55D6AE7719977913E4A8A414743C50" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2016Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">83.64</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1586-wk-Fact-ADC022D8BA043E5B1867A8A413EE2F0C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">824</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1600-wk-Fact-AF7AEEDFAE6E3EC9B6BFA8A414745D91" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">176.26</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1650-wk-Fact-04D302A15DFCCCB7F98CA8A414749938" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,113</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1665-wk-Fact-400E7B9B6C174548C70CA8A4144474CD" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">44.80</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1715-wk-Fact-DDD349A5650943CF8D6EA8A41448D4B1" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">50</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1730-wk-Fact-82673A53DA87CD6E6CD9A8A4144846CE" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">134.83</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1780-wk-Fact-23171F428BD766E13FC3A8A414484689" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2017Q4" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">4,817</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1794-wk-Fact-9452E120AFBCF2353CCDA8A4144C9BD5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2017Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">107.91</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1844-wk-Fact-A2C82EE825ADE82E014DA8A41448BF05" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">432</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1858-wk-Fact-33058DF257D428000D4CA8A414448ED4" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">208.21</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1908-wk-Fact-ED3103CB2AC7EB0E175AA8A414483137" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,126</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1923-wk-Fact-8B963E4F8CB2AB398D94A8A413EE6CC3" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">66.53</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e1973-wk-Fact-E097EA85C235398475ACA8A414481024" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">31</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e1988-wk-Fact-A04D8B5664692F26CD99A8A4144C5CED" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">158.80</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2038-wk-Fact-42A472F316527BDB78D1A8A41444E24C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2018Q4" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">4,092</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2052-wk-Fact-35BE317E6F964D6761EEA8A414788F3C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2018Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">129.51</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2103-wk-Fact-6A9B5B8741F8D0E6E06DA8A414443EF4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">162</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2117-wk-Fact-F50668C7BAAB4714237CA8A41448F47E" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">251.58</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e2169-wk-Fact-524531B1E1EAFA2BAC32A8A4144C6F2A" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2184-wk-Fact-ECC7CF5AFF2299DE8F28A8A414745328" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">96.92</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e2234-wk-Fact-3B0AC3A4D6FA16158EAAA8A41448E74F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">29</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2249-wk-Fact-2775889980B464658A38A8A41448D9AD" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">174.54</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2299-wk-Fact-C87B875291D7B2E11002A8A41478C427" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2019Q4" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">3,226</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2318-wk-Fact-360A6099B9609C931E64A8A4144890EB" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">145.27</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48757553e2332-wk-Fact-473210CD970FBECC8CCCA8A414746293" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" contextRef="FD2019Q4YTD" format="ixt-sec:duryear">6</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2348-wk-Fact-7204C84F52712E956CA1A8A41478E776" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">499,124</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercisable at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2363-wk-Fact-19C037964E70A6D33497A8A414480A97" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="FI2019Q4" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">2,067</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2382-wk-Fact-C711CFD4A72999E15F06A8A414741F52" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">121.07</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48757553e2396-wk-Fact-5CD63F287779909057B9A8A41448B26A" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="FD2019Q4YTD" format="ixt-sec:duryear">6</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2412-wk-Fact-0E3C608B1BC7E12D60A2A8A4144CB32B" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">369,938</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We had unvested options to purchase </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e2426-wk-Fact-D6FFD4BB14236134F25BA8A413F60525" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">1.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares with a weighted average grant date exercise price of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48757553e2430-wk-Fact-E5C6E8D0018B624E1649A8A413F23D1C" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">188.48</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and unvested options to purchase </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e2438-wk-Fact-69DC0C407FBCA2B2AB9AA8A413F63837" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">1.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares with a weighted average grant date exercise price of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48757553e2442-wk-Fact-3C550AD5B0D2DBF9B526A8A413F284AC" name="tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">169.24</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="TextSelection-25436B9E1586085D037EA8A4149450E9-0-wk-Fact-41381E4EEF77C563CE16A8A413F27042" continuedAt="TextSelection-04CBDCFDF9DA831DD9BFA8A4149490E9-0" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average grant-date fair value of stock options granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2558-wk-Fact-A48C120CFBE0760B5319A8A414203ED7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">74.54</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2577-wk-Fact-C72EFDACD5940D62CECBA8A414186735" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">66.52</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2596-wk-Fact-9B8AA8ECD8BA7CC8EE96A8A4141C07E7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">55.56</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total intrinsic value of stock options exercised</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2617-wk-Fact-10F624EF561A8ABB419BA8A4141CB977" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,899</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2636-wk-Fact-0E65C74B1E270A6EE794A8A4141CBC4A" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">176,716</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2655-wk-Fact-6B3D2DC7DB50E66CBB39A8A4141C4C31" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">137,699</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Compensation Expense</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="TextSelection-E0101FE0CC46990EDFF7A8A41494CA1D-0-wk-Fact-26CDDDDB85DE01EFF44BA8A413F22A49" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes share-based compensation expense related to share-based awards which is recorded in the consolidated statements of comprehensive income:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2831-wk-Fact-88A41E814E260E5ADC0BA8A4146039E7" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,002</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2850-wk-Fact-1233E73A64542E5D73F5A8A414645D65" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,588</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2869-wk-Fact-EAE0635A78D9279D7B92A8A41464A204" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,415</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2885-wk-Fact-F780FB5A1B103B8A20DAA8A41460B35D" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">44,965</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2904-wk-Fact-BC45EC3C962324CFC8B0A8A414649124" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,152</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2923-wk-Fact-CB39060102591553A02FA8A41460A648" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,933</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total share-based compensation expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2944-wk-Fact-CDCD2A0DA42B091B81A4A8A41464769E" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">59,967</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2963-wk-Fact-9E7BED4155D19515DE19A8A414343AB1" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">52,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e2982-wk-Fact-20EFD80AE2EF045D22DAA8A41460D9C8" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e3003-wk-Fact-5F74D9464FFD2A9957F4A8A4146427A4" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,819</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e3023-wk-Fact-151110F3CFFBEA247293A8A41460C4DA" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,487</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e3043-wk-Fact-8945370E943541FB0817A8A4146008B0" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,624</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net decrease (increase) in net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e3070-wk-Fact-1DFC8882D013211178B9A8A414601F99" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,148</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48757553e3089-wk-Fact-42A777AEB2893D28AC2BA8A41460D206" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,253</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48757553e3108-wk-Fact-A9603E544823F238F090A8A41464363C" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,276</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48757553e3126-wk-Fact-B143C4C86FBBFAB8E24FA8A413F2F04C" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">148.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> of total unrecognized compensation cost related to unvested options and restricted stock units, net of expected forfeitures, which is expected to be amortized over a weighted average amortization period of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48757553e3130-wk-Fact-5C6F721B25A9AB2DEF73A8A413FA6E40" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">2.5</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Employee Stock Purchase Plan</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) participants may contribute up to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e3140-wk-Fact-34AB65E872F8B1B28645A8A413F2287F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">15</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e3144-wk-Fact-2C68A2BF70049B335B91A8A413F6B9FE" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" contextRef="FD2019Q4YTD_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">85</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of the closing price of Tyler shares on the last day of each quarterly offering period. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e3152-wk-Fact-ADEDC327D782080B4914A8A413F6A920" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">702,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future issuances the ESPP from the </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48757553e3156-wk-Fact-3B5F7FEBD250F5F2F436A8A413EEA0FD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">2.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares previously approved by the stockholders.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-25</span></div></div><hr style="page-break-after:always"></hr><div><a id="s892A2BCCA0B35304AB251CC006E3DFD3"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(10)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:EarningsPerShareTextBlock" id="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-0-wk-Fact-2619A112229BBB59E1A6A8A4145C5E50" continuedAt="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-1" escape="true"><span style="font-family:inherit;font-size:10pt;">EARNINGS PER SHARE</span></ix:nonNumeric></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="TextSelection-2645B9FF0067E3620863A8A41494EAD9-0-wk-Fact-CF4CAA00886501C0F6E2A8A414504F08" escape="true"><ix:continuation id="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-1" continuedAt="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:65%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Numerator for basic and diluted earnings per share:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e807-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,527</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e826-wk-Fact-83D597512074D1ADC051A8A4143010C1" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">147,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e845-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator:</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted-average basic common shares outstanding</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e920-wk-Fact-DD30DEE5C07EA0E4A2EFA8A41460DCD9" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">38,640</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e939-wk-Fact-88B421765E1C9386161CA8A41450AAFA" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">38,445</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e958-wk-Fact-4A01CDA05E9AFE785716A8A4145432F2" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">37,273</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Assumed conversion of dilutive securities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock options</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1041-wk-Fact-89C0AC89CB9EDDCFA699A8A4145010FF" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,465</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1060-wk-Fact-F9C1EC459D6DBF6A9666A8A41450AE6A" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,678</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1079-wk-Fact-2BD0F6A69D9E52FDA3E3A8A4145CCD39" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,973</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator for diluted earnings per share</span></div><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1103-wk-Fact-411DBC4C77F02D5552B3A8A4145CF79F" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,105</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1122-wk-Fact-90A2A98B2905A1D75828A8A41450848C" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,123</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1141-wk-Fact-1B8EBB28A56CC268F7D8A8A41450219D" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">39,246</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per common share:</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1226-wk-Fact-EE9A2901D384EFA28CDDA8A413F60C40" name="us-gaap:EarningsPerShareBasic" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.79</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1245-wk-Fact-06C0F412053A2394EE5EA8A413EEE587" name="us-gaap:EarningsPerShareBasic" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.84</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1264-wk-Fact-074963B3383E675F2128A8A4143C4090" name="us-gaap:EarningsPerShareBasic" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">4.55</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1286-wk-Fact-E90DD5B91EA2DBB2BA7BA8A413FA5F46" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1305-wk-Fact-0E479A1F4C6D148993EBA8A414504516" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.68</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48754727e1324-wk-Fact-EDCED98D78B4DC7353B5A8A4145C170F" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">4.32</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><ix:continuation id="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-2" continuedAt="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-3"><span style="font-family:inherit;font-size:10pt;">Share-based awards representing the right to purchase common stock of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48754727e1339-wk-Fact-D5F44E95E6F24065F82AA8A414588C41" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="0" format="ixt:numdotdecimal">633,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48754727e1347-wk-Fact-C6D909C639D0C8C8F321A8A41458898F" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="0" format="ixt:numdotdecimal">888,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48754727e1355-wk-Fact-FD7407002FDBA2E8BB4CA8A41458FE53" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="0" format="ixt:numdotdecimal">1,343,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2017</span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-3"> were not included in the computation of diluted earnings per share because their inclusion would have had an anti-dilutive effect.</ix:continuation> </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s3D3C045040305A8B9BD4E45DCF5A087D"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(11)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LesseeOperatingLeasesTextBlock" id="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-0-wk-Fact-35E1B378A425CFE765B8CB50F98265C6" continuedAt="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-1" escape="true"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:OperatingLeasesOfLessorDisclosureTextBlock" id="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-0-wk-Fact-BA07F71F85ABE3D1210FCB5018FD2E08" continuedAt="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-1" escape="true">LEASES</ix:nonNumeric></ix:nonNumeric></span></div><ix:continuation id="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-1" continuedAt="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-2"><ix:continuation id="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-1" continuedAt="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-2"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire in </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48759384e582-wk-Fact-FFB1D4229DF17A53C5C9CB6AF7557CD9" name="us-gaap:LesseeOperatingLeaseTermOfContract" contextRef="FI2019Q4_srt_RangeAxis_srt_MinimumMember" format="ixt-sec:durwordsen">one year</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48759384e586-wk-Fact-640069F5D0FAB0956A1ACB6B323D2B3D" name="us-gaap:LesseeOperatingLeaseTermOfContract" contextRef="FI2019Q4_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">eight years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">.&#160;Some of these leases include options to extend for up to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48759384e590-wk-Fact-41AE5E21422060008978CB657A905347" name="us-gaap:LesseeOperatingLeaseRenewalTerm" contextRef="FI2019Q4" format="ixt-sec:duryear">10</ix:nonNumeric> years</span></span><span style="font-family:inherit;font-size:10pt;">. We had&#160;no finance leases and no related party lease agreements as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. Operating lease costs were approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e598-wk-Fact-7CBD9F18DED11402F7BACB6677F66C52" name="us-gaap:LeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">9.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e607-wk-Fact-5A4A16ABBB6D74F267C4CB66BE9D80F2" name="us-gaap:LeaseCost" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">7.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e615-wk-Fact-B5712EA17BCF616BB8481BC086EBF255" name="us-gaap:LeaseCost" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:continuation id="TextSelection-516A87C494AB635319DBCB5215BD964F-0"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of operating lease expense were as follows (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"></td></tr><tr><td style="width:26%;"></td><td style="width:1%;"></td><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:18%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Lease Costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financial Statement Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e744-wk-Fact-B743831B8192CE3D4F26CB1F977A6CC9" name="us-gaap:OperatingLeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,379</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Short-term lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e774-wk-Fact-D8DC2D01DECFBEEEB0EACB1F981EA226" name="us-gaap:ShortTermLeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Variable lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e809-wk-Fact-2338AED13A2D3179E728CB1F98E8432C" name="us-gaap:VariableLeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,274</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e849-wk-Fact-1FEDB0D36AB2772FF85BCB1F997EBA9C" name="us-gaap:LeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,922</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-26</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-2" continuedAt="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-3"><ix:continuation id="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-2" continuedAt="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-3"><ix:nonNumeric contextRef="FD2019Q4YTD" name="tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" id="TextSelection-79E47D7BB5445A1571A9CB5484E457FD-0-wk-Fact-E944F99AF9795FFF47A4CB5626FBAEC0" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:75%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:22%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Assets:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e950-wk-Fact-8DE440BE3BCA3C99E80A1113DBF6BD1F" name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Liabilities:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, short-term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e996-wk-Fact-B5B71B1D8A703078B130111525DB16D4" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,387</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1021-wk-Fact-5D28A059EFA776F6383A1115FAEFC609" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,822</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1051-wk-Fact-FBF5F0EC4CF295474BA2CB40E0F9670D" name="us-gaap:OperatingLeaseLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,209</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" id="TextSelection-D88DCFB55D1A59700C0BCB590569750B-0-wk-Fact-AB17361C6ED2B385E268CB59540585D8" escape="true"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LeaseCostTableTextBlock" id="TextSelection-118E6995024B534EA801CB537446AFD6-0-wk-Fact-C32D56427407EE76C5A2CB5399154DB3" continuedAt="TextSelection-516A87C494AB635319DBCB5215BD964F-0" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental information related to leases was as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:77%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:20%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other Information</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Cash Flows</span><span style="font-family:inherit;font-size:8pt;">&#160;</span><span style="font-family:inherit;font-size:8pt;">(in thousands):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid amounts included in the measurement of lease liabilities:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">Operating cash outflows from operating leases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1206-wk-Fact-8753BEA089903A98FBA6CB341B4ACA92" name="us-gaap:OperatingLeasePayments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,267</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1283-wk-Fact-DDAA146B53B25E0E7EF7CB3442B19919" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,466</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Lease Term and Discount Rate:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average remaining lease term (years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonNumeric id="d48759384e1355-wk-Fact-A3E3080176F22A1FE798CB334D5A08EA" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" contextRef="FI2019Q4" format="ixt-sec:duryear">4</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1381-wk-Fact-ED9C0AA0FED9C783FF56CB347BA55C62" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" contextRef="FI2019Q4" unitRef="number" decimals="4" scale="-2" format="ixt:numdotdecimal">4.00</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="TextSelection-BF0440EEA269E9229989CB6046F9B307-0-wk-Fact-EEB370298FCB243A7D19CB6095A48DDB" escape="true"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, maturities of lease liabilities were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:72%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:25%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1461-wk-Fact-D8B93863DDD0B0627E7FCB40DB73E91C" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,684</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1481-wk-Fact-D2B2A031C724158AB8C3CB40DC643CE4" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,246</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1506-wk-Fact-1035572352D0E4B6E075CB40DD0B0A7A" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,960</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1531-wk-Fact-D73D5E726F4A9418EAE5CB40DDB2DCF7" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,923</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1556-wk-Fact-6CE6C7E3D2645D0F9DF9CB40DE595D34" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,478</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1581-wk-Fact-6318D1B96A58221BD484CB40DEFFC659" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,042</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease payments</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1606-wk-Fact-31C9A196EBA28287A5C3CB40DFA6D470" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,333</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Less: Interest</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48759384e1631-wk-Fact-FB85EC6D78F3D4F66C17CB40E04CCDA6" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,124</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Present value of operating lease liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1662-wk-Fact-FBF5F0EC4CF295474BA2CB40E0F9670D" name="us-gaap:OperatingLeaseLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,209</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-27</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-3"><ix:continuation id="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-3"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock" id="TextSelection-BA371140F8AF418D6A05CB6262EC2308-0-wk-Fact-3A542D88F71D02705D10CB62A6C37B86" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:72%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:25%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1737-wk-Fact-6C4679502CB940A4D446CB47FF637ED0" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,994</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1757-wk-Fact-55A1FF148E76F4B80297CB48000AD2E9" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,146</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1782-wk-Fact-45B5B5CA9E2D8A98B2BCCB4800B2E3AB" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,976</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1807-wk-Fact-82BDA805318805012CEACB480158258B" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFourYears" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,925</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1832-wk-Fact-D7BCA75CACD642DFA146CB4801FE5EAF" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFiveYears" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,164</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1857-wk-Fact-08BCA53A821F9ED07003CB4802A542B7" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDueThereafter" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,132</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e1887-wk-Fact-F283DDE0E04F88295A16CB48034BB1EA" name="us-gaap:OperatingLeasesFutureMinimumPaymentsDue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,337</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Rental Income from third parties</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We own office buildings in Bangor, Falmouth and Yarmouth, Maine; Lubbock and Plano, Texas; Troy, Michigan; Latham, New York; and Moraine, Ohio. We lease space in some of these buildings to third-party tenants. The property we lease to others under operating leases consists primarily of specific facilities where one tenant obtains substantially all of the economic benefit from the asset and has the right to direct the use of the asset. These non-cancelable leases expire between </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2025</span><span style="font-family:inherit;font-size:10pt;">, some of which have options to extend the lease for up to&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48759384e1913-wk-Fact-43512D1800BDD3934B46CB7027EA50A1" name="us-gaap:LessorOperatingLeaseRenewalTerm" contextRef="FI2019Q4" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. We determine if an arrangement is a lease at inception. None of our leases allow the lessee to purchase the leased asset.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental income from third-party tenants was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e1920-wk-Fact-AB45B2AF160C62BC254DCB71CBADD017" name="us-gaap:RentalIncomeNonoperating" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e1928-wk-Fact-138BF7A48FA6CFF940EBCB71E70693F5" name="us-gaap:RentalIncomeNonoperating" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759384e1936-wk-Fact-4BBCF521FB5736624FE11BC0F66E5CF6" name="us-gaap:RentalIncomeNonoperating" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. Rental income is included in Hardware and other revenue on the consolidated statements of comprehensive income. <ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:OperatingLeaseLeaseIncomeTableTextBlock" id="TextSelection-3AEA2830CFD370F8493ACB63625DD7BA-0-wk-Fact-A43AE0E7CBC2B51CA739CB639978C495" continuedAt="TextSelection-3AEA2830CFD370F8493ACB63625DD7BA-1" escape="true">Future minimum operating rental income based on contractual agreements is as follows (in thousands):</ix:nonNumeric></span></div><ix:continuation id="TextSelection-3AEA2830CFD370F8493ACB63625DD7BA-1"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:66%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:31%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2007-wk-Fact-917725B767D84489A774CB4A2E33C9EE" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,341</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2027-wk-Fact-61A7A9E2A98AE96CB7D0CB4A2EDBFD0C" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,372</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2052-wk-Fact-12C72959DA9088DFF25BCB4A2F88FD7D" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,402</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2077-wk-Fact-84EFAE1971DCFC78C198CB4A302BEE02" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,432</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2102-wk-Fact-26DD46DB087C85C25CBECB4A30D06AEA" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,462</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2127-wk-Fact-001104B03CB1CC95F66ECB4A317F406E" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">857</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48759384e2157-wk-Fact-C2503DD2EBBEA224873ACB4A3224C56B" name="us-gaap:LessorOperatingLeasePaymentsToBeReceived" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,866</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had no additional significant operating or finance leases that had not yet commenced.</span></div></ix:continuation></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s0114083EB46A50149256F62E440814F5"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(12)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" id="TextSelection-75A215494EE322BBE004A8A414945150-0-wk-Fact-66B009C9AF6839B5F821A8A41470F97A" continuedAt="TextSelection-75A215494EE322BBE004A8A414945150-1" escape="true"><span style="font-family:inherit;font-size:10pt;">EMPLOYEE BENEFIT PLANS</span></ix:nonNumeric></div><ix:continuation id="TextSelection-75A215494EE322BBE004A8A414945150-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48759484e584-wk-Fact-3F35D361DBFF291C9C45A8A4146C556C" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" contextRef="FD2019Q4YTD" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">30</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48759484e588-wk-Fact-43A92E0834159A33BD74A8A4147025D3" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of an employee&#8217;s compensation to the plan.&#160;We made contributions to the plan and charged operating results </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759484e592-wk-Fact-2603580204DC997D322FA8A4146CE97D" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">11.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759484e600-wk-Fact-95A9F2E9964ADD9DFD85A8A414708DDA" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">9.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48759484e609-wk-Fact-07067DFC9CBB16F1FB88A8A41470E378" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">7.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sEC2F14C553EE541D8D7E0AA56C86DE16"></a></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:12px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:12px;font-family:inherit;font-size:10pt;padding-right:48px;">(13)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="TextSelection-7EC4FE868F125EBE30D9A8A4149456D3-0-wk-Fact-8DB119A3A6E5404472EDA8A413FAEED9" continuedAt="TextSelection-7EC4FE868F125EBE30D9A8A4149456D3-1" escape="true"><span style="font-family:inherit;font-size:10pt;">COMMITMENTS AND CONTINGENCIES</span></ix:nonNumeric></div><ix:continuation id="TextSelection-7EC4FE868F125EBE30D9A8A4149456D3-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other than routine litigation incidental to our business, there are </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48759536e584-wk-Fact-7209FECE3CA4EBD67AB6A8A413FAC0E2" name="tyl:NumberOfLegalProceedingsThatHaveMaterialEffect" contextRef="FI2019Q4" unitRef="legal_matter" decimals="INF" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> material legal proceedings pending to which we are party or to which any of our properties are subject.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-28</span></div></div><hr style="page-break-after:always"></hr><div><a id="sF938C2E8E47C5434851CE13B8C9C6E90"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:0px;padding-bottom:12px;padding-top:16px;text-indent:0px;"><span style="padding-bottom:12px;padding-top:16px;font-family:inherit;font-size:10pt;padding-right:48px;">(14)</span><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SegmentReportingDisclosureTextBlock" id="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-0-wk-Fact-A2CC91B97C06AECC7FD8A8A4143C2DDA" continuedAt="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-1" escape="true"><span style="font-family:inherit;font-size:10pt;">SEGMENT AND RELATED INFORMATION</span></ix:nonNumeric></div><ix:continuation id="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-1" continuedAt="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-2"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide integrated information management solutions and services for the public sector, with a focus on local governments.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide our software systems and services and appraisal services through </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48768054e587-wk-Fact-8F5C1CCFF2C61EC72F0EA8A4143CD5DB" name="tyl:NumberOfBusinessUnits" contextRef="FI2019Q4" unitRef="business_unit" decimals="INF" scale="0" format="ixt-sec:numwordsen">six</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> business units, which focus on the following products:</span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">financial management, education and planning, regulatory and maintenance software solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">courts and justice and public safety software solutions; </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">data and insights solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">case management and business management solutions; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">appraisal and tax software solutions and property appraisal services.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In accordance with ASC 280-10, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Segment Reporting</span><span style="font-family:inherit;font-size:10pt;">, the financial management, education and planning, regulatory and maintenance software solutions unit; financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions unit; courts and justice and public safety software solutions unit; the data and insights solutions unit; and case management and business management solutions unit meet the criteria for aggregation and are presented in </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48768054e640-wk-Fact-767A65DB8037822D0D2C1BC60504C976" name="us-gaap:NumberOfReportableSegments" contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="segment" decimals="INF" scale="0" format="ixt-sec:numwordsen">one</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> reportable segment, Enterprise Software (&#8220;ES&#8221;).&#160;The ES segment provides public sector entities with software systems and services to meet their information technology and automation needs for mission-critical &#8220;back-office&#8221; functions such as: financial management and education, courts and justice, public safety, planning, regulatory and maintenance, land and vital records management, data and insights and case management and business management processes. The Appraisal and Tax (&#8220;A&amp;T&#8221;) segment provides systems and software that automate the appraisal and assessment of real and personal property as well as property appraisal outsourcing services for local governments and taxing authorities.&#160;Property appraisal outsourcing services include: the physical inspection of commercial and residential properties; data collection and processing; computer analysis for property valuation; preparation of tax rolls; community education; and arbitration between taxpayers and the assessing jurisdiction.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We evaluate performance based on several factors, of which the primary financial measure is business segment operating income.&#160;We define segment operating income for our business units as income before noncash amortization of intangible assets associated with their acquisition, interest expense and income taxes.&#160;Segment operating income includes intercompany transactions.&#160;The majority of intercompany transactions relate to contracts involving more than one unit and are valued based on the contractual arrangement.&#160;Segment operating income for corporate primarily consists of compensation costs for the executive management team and certain accounting and administrative staff and share-based compensation expense for the entire company.&#160;Corporate segment operating income also includes revenues and expenses related to a company-wide user conference.&#160;The accounting policies of the reportable segments are the same as those described in Note 1, &#8220;Summary of Significant Accounting Policies.&#8221;</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Segment assets include net accounts receivable, prepaid expenses and other current assets and net property and equipment.&#160;Corporate assets consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, capitalized software development costs, deferred income taxes and net property and equipment mainly related to unallocated information and technology assets.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ES segment capital expenditures included </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48768054e654-wk-Fact-7C0E17EE8A14418BE1071BC75A7708E2" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">12.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48768054e662-wk-Fact-07D17D2C15D019D13330A8A41438EBF2" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2018Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> for the expansion of existing buildings and purchases of buildings and land.&#160; A&amp;T segment capital expenditures included </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48768054e670-wk-Fact-9618D926A7F300ACF2791BCA97D38137" name="us-gaap:PaymentsForCapitalImprovements" contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">8.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> for the expansion of existing buildings.&#160;</span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-29</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="TextSelection-44EA332DC15DB9513BBFA8A414945963-0-wk-Fact-A627130D79519EF16B2DA8A4143C073F" escape="true"><ix:continuation id="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-2" continuedAt="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-3"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:53%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e891-wk-Fact-4613EEB24E672CB1648CA8A41474549B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">92,567</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e910-wk-Fact-36078C39B70D66D2C643A8A4147C4381" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,638</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e929-wk-Fact-6980BF62DC9CF5884819A8A41470EC53" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e949-wk-Fact-14CD609058007D3D2E3AA8A4147C12B1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100,205</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e964-wk-Fact-BD218FDF50A1004C0CAFA8A414381FBA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">285,092</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e983-wk-Fact-9C28A4BFB77E6D910FFFA8A413E1D211" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,260</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1002-wk-Fact-729F321784BF010111B6A8A4147CF459" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1022-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">296,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1042-wk-Fact-FCD3C382B98F67CCFCBAA8A41478CFB5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">185,892</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1061-wk-Fact-A1AC068E3E24282F745EA8A41470322F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,169</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1080-wk-Fact-088ECB477E87EDDA5BEFA8A413E18D4B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1100-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">213,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1120-wk-Fact-4A68B1E223026F70EFCAA8A413E1783A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">405,063</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1139-wk-Fact-95B17FD7C92A6C2273A4A8A4147C8840" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,255</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1158-wk-Fact-B7ACF15EAADC66949E4DA8A413E1B2E4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1178-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">430,318</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1198-wk-Fact-738B245F0EEB3D477E3DA8A413E15F29" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1217-wk-Fact-E83444E74D97D20DF77DA8A4147C7532" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,479</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1236-wk-Fact-8EE2E648549BEBEA6273A8A41438F04E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1256-wk-Fact-0E5534002B43682C9563A8A4144C2123" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,479</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1276-wk-Fact-2C7C87356588BED3EAF9A8A413E53FA6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,735</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1295-wk-Fact-6BBC631DE28AC03779A3A8A41478683B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1314-wk-Fact-F74A680FF339D20F5C18A8A4147C479B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,256</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1334-wk-Fact-F2ADE67C5C61DE8CF087A8A41450BC9A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,012</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1354-wk-Fact-DB24A2418A8046BCA118A8A414784CC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1373-wk-Fact-8D5EE1986C9D8B1C1BC9A8A4147C3AE1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e1392-wk-Fact-827C001CE58629B02EC1A8A414741DA4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1438-wk-Fact-C26FA4F9A36317FC454CA8A413EE3614" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,000,845</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1457-wk-Fact-6AFC41ABBE0F4CA0F8BFA8A4147C8366" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">94,822</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e1475-wk-Fact-E0DCC0403C46DBB23452A8A414380E16" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,240</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1495-wk-Fact-864F481B04E356A536C8A8A41464106D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,086,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1510-wk-Fact-3D0B89C699B13639B1A3A8A413E1229A" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">64,289</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1529-wk-Fact-D266E60BFAF2E516340CA8A41438BCDB" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">926</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1548-wk-Fact-8D73FB01082B35C4E926A8A414702F91" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,457</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1568-wk-Fact-5069B9CC264DD2E934F7A8A413FA6FB3" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,672</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1589-wk-Fact-F16A6D6B86318872AE0BA8A413E18707" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">261,494</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1608-wk-Fact-712D5188C3637A16060AA8A4143CF03A" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,789</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e1627-wk-Fact-46643788B2EF9E8F44B4A8A4147039B5" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">73,829</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1648-wk-Fact-AE0FE7079521D16D3E8AA8A414744152" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">208,454</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1668-wk-Fact-AE3DD72AE1FB557B8AB3A8A4147C9A27" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,335</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1687-wk-Fact-15CBE248B530DBD11012A8A41478A5FD" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,384</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1706-wk-Fact-F37C97A6A8A9F8618C5DA8A4147C0249" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,379</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1726-wk-Fact-F7D647A331EFB27D5087A8A4147C3BC9" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">38,098</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1751-wk-Fact-AB622BD5C745B732BA11A8A4143835B8" name="us-gaap:Assets" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">834,010</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1770-wk-Fact-1EDB3CD4EE3872CEDE4FA8A4147C8DED" name="us-gaap:Assets" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">90,536</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1789-wk-Fact-A0A16CB690454AC8E345A8A413EA4AE9" name="us-gaap:Assets" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,267,068</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e1809-wk-Fact-7BC0663EBF709B61711AA8A4140A8042" name="us-gaap:Assets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,191,614</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:53%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2023-wk-Fact-D0BAE48D674D014444F4A8A413F2A341" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">83,735</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2042-wk-Fact-F93965F58341BCAB7561A8A413F63B1D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,706</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2061-wk-Fact-19FB30B5554401E9DDF0A8A413FACE03" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2081-wk-Fact-D87D651D4B7AEDDCA6AEA8A413E10FDB" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">93,441</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2096-wk-Fact-87B6B743F05FCB56CBAEA8A413FEA8FA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">210,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2115-wk-Fact-AAA92693A3B48B42195AA8A413EECB7F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,807</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2134-wk-Fact-3A7629B2A0B596602574A8A413FEB897" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2154-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">220,547</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2174-wk-Fact-848A1C4E967CC337C681A8A413FA04F2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">166,921</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2193-wk-Fact-460A252483D9558378AAA8A413E5E73E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2212-wk-Fact-36C1B6B6631FA24A12A8A8A413EA2DE8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2232-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2252-wk-Fact-87B13202948C07B6BEF9A8A413F2FEAF" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,904</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2271-wk-Fact-A3FD9DC5C05AB3C9E067A8A413F26894" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,617</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2290-wk-Fact-C1541B39A465D46016BDA8A413FA3BEC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2310-wk-Fact-76F25FED2DABCB1C31E1A8A414705457" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">384,521</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2330-wk-Fact-6AB31E200A833F4109AAA8A4140ADF88" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2349-wk-Fact-86EC3A01C377EA3DC3C7A8A413F67441" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2368-wk-Fact-950FFBD190EC58E77B44A8A413FA3439" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2388-wk-Fact-CD0030531C7695000F44A8A413FA941D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2408-wk-Fact-37A7A289E1EFBBF5D773A8A413FE91AA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,745</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2427-wk-Fact-4BF4D9C4F7445C7736A2A8A413FE6613" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2446-wk-Fact-77EED85C328E4A935173A8A413E13735" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,881</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2466-wk-Fact-B1EB65257A76BD031A77A8A41402B795" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,658</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2486-wk-Fact-A7AAA5D60B10837B8134A8A4140A17A1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">13,155</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2505-wk-Fact-6395195FCA1CA8134B69A8A413FA6E8C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e2524-wk-Fact-AB454F78E238A7E98029A8A413EAD41D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">13,155</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2570-wk-Fact-1B146729CE3E3D587601A8A413F6D416" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">853,200</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2589-wk-Fact-A471588B051B8F271550A8A413FA6F3E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">90,356</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e2607-wk-Fact-4739B4FAA25F6310C43DA8A413E1C588" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">8,274</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2627-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">935,282</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2642-wk-Fact-DE755556C7BCA01C282DA8A413FA6F95" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,130</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2661-wk-Fact-A379B77354085AF6CCC6A8A413FA1B22" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">914</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2680-wk-Fact-617C5BE23C0C8E783A61A8A4140A162C" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,715</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2700-wk-Fact-2C4E3579DF72EB46466AA8A41430355B" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">61,759</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2721-wk-Fact-F3CC3129FF03E93D9F37A8A413F6B891" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">237,159</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2740-wk-Fact-A378932A4895C289E99CA8A413EE527B" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,094</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e2759-wk-Fact-CE271CD369C71A1E087AA8A413EE9838" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">68,572</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2780-wk-Fact-639CE2CF729D97BB0889A8A41474C614" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,681</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2800-wk-Fact-412B0982FB0E8E324ED2A8A4140600D3" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,973</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2819-wk-Fact-C8C9B163973461B92B39A8A413EA4127" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">782</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2838-wk-Fact-FF5107BA69C73A180B7BA8A413FA3679" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,377</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2858-wk-Fact-C8BF207391948D7C2AEAA8A413F63C9B" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,132</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2883-wk-Fact-CD2328FF49BE7C152E65A8A413F6C5D2" name="us-gaap:Assets" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">556,100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2902-wk-Fact-AB81E40E585E918805DCA8A413FADFB6" name="us-gaap:Assets" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">63,670</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2921-wk-Fact-7EC59A11542B9E9E3081A8A413FAFECD" name="us-gaap:Assets" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,171,193</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e2941-wk-Fact-EE621A7A1F9B03681BD2A8A4146CCC2A" name="us-gaap:Assets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,790,963</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"></td></tr><tr><td style="width:53%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:9%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017 </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3155-wk-Fact-A3545081381374412C97A8A413FE14AF" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">78,388</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3174-wk-Fact-51CB24F78832F025834AA8A4140A614A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,854</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3193-wk-Fact-60697AE5609CA2DF0E5AA8A413FADCF6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3213-wk-Fact-E68176EC7D902A06108FA8A413FEB50F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">86,242</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3228-wk-Fact-658DB6A3865EF28DF600A8A414063A26" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">164,317</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3247-wk-Fact-8279B218FBFDF3C77183A8A4140622DF" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,859</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3266-wk-Fact-7D4D1D4D2212C32A640BA8A4140A50B7" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3286-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,176</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3306-wk-Fact-C0FEB64A64494F6B01A2A8A413FEE6C5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">161,245</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3325-wk-Fact-EC41D558E541192B07CBA8A4140A69DC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,215</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3344-wk-Fact-6210F6BB693A41F82FA2A8A4140A1C97" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3364-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">180,460</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3384-wk-Fact-C59AEB81181010563342A8A414064C02" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">337,701</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3403-wk-Fact-4A6091793E3D80ACC2D5A8A41402A243" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,618</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3422-wk-Fact-ED1F40FFBD8F23C1C40CA8A41406243D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3442-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3462-wk-Fact-6E4588E2E7805239553CA8A4140AE286" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3481-wk-Fact-A86B23765EBBDEF10E6DA8A41406B99A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,023</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3500-wk-Fact-3FC49C09847AE2BADD05A8A4140A77BE" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3520-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,023</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3540-wk-Fact-D5BCCB23AF26CCD585FFA8A4140A3D63" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,057</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3559-wk-Fact-3F9DEF72680333626B51A8A41406F891" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3578-wk-Fact-87E035BF9A7B48DF4580A8A4140667C2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,612</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3598-wk-Fact-894E1C2079EDB6068C09A8A413EEC339" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,679</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3618-wk-Fact-8F95285CE4FA7C926388A8A414067511" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">10,425</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3637-wk-Fact-DD2059B094EBCF2FF3C2A8A41402A163" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e3656-wk-Fact-9151A3AEB604C1140F5FA8A414069429" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">10,425</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3702-wk-Fact-80CD0A31757594F83E70A8A41406AB8F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">765,133</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3721-wk-Fact-224701AFC1BA77577994A8A41406FCC9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,579</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e3739-wk-Fact-F848E53917D07C81857FA8A414025134" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,813</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3759-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,899</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3774-wk-Fact-C1958EC7FCCFAC1D88CBA8A4140A683F" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">43,987</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3793-wk-Fact-922A838C82B1F68C8294A8A41406E934" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">760</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3812-wk-Fact-F04BA375FFB564EF9E5BA8A41406ECE7" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,648</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3832-wk-Fact-5869AE5BE9721B78EF21A8A413F6174D" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,395</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3853-wk-Fact-C81066D86DE97963BE76A8A413FE990F" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">229,001</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3872-wk-Fact-B4ECE1981D64E72DDA1AA8A4140A9D6F" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,788</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e3891-wk-Fact-C138122B1A9A7071D42CA8A414063C0A" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">51,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3912-wk-Fact-3CAD8F2B34A6A8D434DEA8A414784512" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">197,825</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3932-wk-Fact-FC5B4C51B030787CBDC9A8A413FEB613" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,096</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3951-wk-Fact-3AD3CD420FBF82803985A8A4140A649F" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,181</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3970-wk-Fact-D9B297D4405A90948FDDA8A4140AD51E" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,341</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e3990-wk-Fact-B6F5100163A9B9183D59A8A413FEB0A5" name="tyl:SegmentReportingInformationCapitalExpenditures" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">45,618</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4015-wk-Fact-96A4B8B26E51EF86FB57A8A414063EE8" name="us-gaap:Assets" contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">365,736</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4034-wk-Fact-67F42AD4589EE927B870A8A4140A0A80" name="us-gaap:Assets" contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">46,279</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4053-wk-Fact-6BCE9E87C41F173EC9E1A8A41402D291" name="us-gaap:Assets" contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,199,336</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4073-wk-Fact-5B267DAB7CAE04C9CD96A8A414069F10" name="us-gaap:Assets" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,611,351</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-30</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" id="TextSelection-BF3C71F94B003420AED6A8A41494A050-0-wk-Fact-993C9B32ACB7760E3D02A8A4143C6921" escape="true"><ix:continuation id="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-3"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:84.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:61%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Reconciliation of reportable segment operating</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">income to the Company's consolidated totals:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total segment operating income</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4261-wk-Fact-AE0FE7079521D16D3E8AA8A414744152" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">208,454</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4280-wk-Fact-639CE2CF729D97BB0889A8A41474C614" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,681</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4300-wk-Fact-3CAD8F2B34A6A8D434DEA8A414784512" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">197,825</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4320-wk-Fact-C4999192AB95355E78EDA8A414741113" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,642</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4340-wk-Fact-F6EFBB21269C5C1410FFA8A414789D2F" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,972</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4360-wk-Fact-09E8F75EE2FC10EFFA3BA8A414745A72" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,686</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4387-wk-Fact-0CE972E5DA38F8F104DAA8A41478F863" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,445</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4407-wk-Fact-7BA79D99365F0CEBFA3AA8A414780F6D" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,217</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48768054e4427-wk-Fact-42E346EED0F124B72A00A8A414744C0D" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,381</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income (expense), net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4454-wk-Fact-D5B901997E8E2B1FE3C0A8A414780455" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,471</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4473-wk-Fact-D70191AE767D54603980A8A414789076" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,378</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4492-wk-Fact-04DB94C9DEE64051342AA8A41478D08C" name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">698</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4523-wk-Fact-AAECBAE1D97EC9A3A19DA8A41402C8CC" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">159,838</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4542-wk-Fact-0639764666086D738A60A8A41406E4E7" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">155,870</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48768054e4561-wk-Fact-8A85652EFFEF7972B095A8A413FAC43E" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">163,456</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sF61F5D7D09215B83A0DC1C2AD186B1BF"></a></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;"> (15)</span></div></td><td style="vertical-align:top;"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-0-wk-Fact-A55E16F2811868EB2AF6A8A41440C17C" continuedAt="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-1" escape="true"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DISAGGREGATION OF REVENUE</span></div></ix:nonNumeric></td></tr></table><ix:continuation id="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-1" continuedAt="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-2"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tables below show disaggregation of revenue into categories that reflect how economic factors affect the nature, amount, timing, and uncertainty of revenue and cash flows.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Timing of Revenue Recognition</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="TextSelection-43E79F9EA1CCA5BBB8FEA8A41494CAE1-0-wk-Fact-9A93AD62FF7D21DCA233A8A4142426C5" continuedAt="TextSelection-43E79F9EA1CCA5BBB8FEA8A41494CAE1-1" escape="true"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:50%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e764-wk-Fact-791ACBA45CEBF7FAC380A8A414645101" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">84,900</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e783-wk-Fact-22864418C79C25C89335A8A4145075C8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,305</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e803-wk-Fact-14CD609058007D3D2E3AA8A4147C12B1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100,205</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e823-wk-Fact-166CC4156055C6ABC96DA8A4145CEEC1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e842-wk-Fact-3F6BDD9C4FA575C74AA8A8A414600F09" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">296,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e861-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">296,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e887-wk-Fact-D9CC6045097FA39DF840A8A414503109" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e906-wk-Fact-EEEE6C71CE604392EF68A8A4146076B5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">213,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e925-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">213,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e951-wk-Fact-C3C4BAEB2E211CC2D535A8A41450FE01" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e970-wk-Fact-DD0E5C07A952DADABE24A8A4145C2D5F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">430,318</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e989-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">430,318</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1015-wk-Fact-D220CA742E0F83C9F1AEA8A4145C222B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1034-wk-Fact-91243D3B97BEBCA7AB82A8A4145C0FE5" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,479</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1053-wk-Fact-0E5534002B43682C9563A8A4144C2123" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,479</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1079-wk-Fact-117156C1937D472A0C78A8A4145C669F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,012</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1098-wk-Fact-3170A29FFE45AE3F82BFA8A41460C895" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1117-wk-Fact-5D6E01731C5FD75D984EA8A4145C2857" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,012</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1148-wk-Fact-17B1B0CDFDC512C76B34A8A4145CB91A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">107,912</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1167-wk-Fact-FC750E7F018EE421FDD2A8A4145C8014" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">978,515</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1187-wk-Fact-864F481B04E356A536C8A8A41464106D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,086,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:50%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1367-wk-Fact-C62CA3B452B7E50D1C30A8A41440505A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,188</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1386-wk-Fact-45F917C71585BC549C99A8A41440E045" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,253</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1406-wk-Fact-D87D651D4B7AEDDCA6AEA8A413E10FDB" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">93,441</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1426-wk-Fact-4EBCE5763D889E35C4C1A8A4143C7FAF" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1445-wk-Fact-0D771F47F0494235E58CA8A4144402A1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">220,547</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1464-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">220,547</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1490-wk-Fact-8FE35FA988B637C43516A8A4144076EB" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1509-wk-Fact-3C84173CA1D2C20A5B4DA8A4143C208E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1528-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">191,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1554-wk-Fact-2A18C6C211AD61718CC2A8A4143CA035" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1573-wk-Fact-4AC30DAB13BBA692A0ECA8A41444FF1A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">384,521</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1592-wk-Fact-76F25FED2DABCB1C31E1A8A414705457" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">384,521</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1618-wk-Fact-724FB0B1012218EDB276A8A414441CE6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1637-wk-Fact-430E9CF80B114487B624A8A41440DAE3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1656-wk-Fact-CD0030531C7695000F44A8A413FA941D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1682-wk-Fact-94E35CE974811EA80D5DA8A41440077A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,658</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1701-wk-Fact-C1051A63255FF7AEA40CA8A41444CB28" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1720-wk-Fact-98B83F48A0FFFCB5E7FEA8A414409158" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,658</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1751-wk-Fact-384143C0D01E90C98609A8A4144097B1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">98,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1770-wk-Fact-5E7C712E264A488924C1A8A4143C6418" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">836,436</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1790-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">935,282</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-31</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-2" continuedAt="TextSelection-BAF72BBBAA7598689BF6A8A414941D77-0"><ix:continuation id="TextSelection-43E79F9EA1CCA5BBB8FEA8A41494CAE1-1" continuedAt="TextSelection-FA8C6971FD2A58D2F283A8A41494C562-0"><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"></td></tr><tr><td style="width:50%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:15%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1972-wk-Fact-D4789365113C80B33D8F1BD754A50FF0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">69,167</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e1991-wk-Fact-ACD7C46AB478BE0358FD1BD759708544" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,075</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2011-wk-Fact-E68176EC7D902A06108FA8A413FEB50F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">86,242</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2031-wk-Fact-B275B0F2AFF816237A101BD760074026" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2050-wk-Fact-174787B075213A2DA32C1BD7651DCB41" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,176</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2069-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,176</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2095-wk-Fact-91C56F8F63D94970A33F1BD76B3E7083" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2114-wk-Fact-3E6B2FE9A2BDE9A094EA1BD77011618C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">180,460</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2133-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">180,460</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2159-wk-Fact-B0A3E7092896890728011BD77691127A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2178-wk-Fact-142F01C84608536D74581BD77AF19DD2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2197-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,319</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2223-wk-Fact-0361CABF023BA0FD50CB1BD780B81E6A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2242-wk-Fact-61CB17E8845776E49FED1BD784F9CB69" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,023</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2261-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,023</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2287-wk-Fact-1B5270F02B1F3D5694921BD78A5F5669" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,679</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2306-wk-Fact-DAD196AF803C2A747A901BD78EAFCC09" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2325-wk-Fact-DDCF6362265CED3A4F191BD79380B67C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,679</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2356-wk-Fact-03376437EF12159FBF191BD795852A5D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">86,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2375-wk-Fact-758EF26D9C52DBB3F5541BD799FF43D7" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">754,053</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2395-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,899</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recurring Revenue </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of our revenue is comprised of recurring revenues from maintenance and subscriptions. Virtually all of our on-premises software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts. The contract terms for subscription arrangements range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48767212e2413-wk-Fact-775AF28A517220681EE1A8A414241DAF" name="tyl:RevenueFromContractWithCustomerContractTerm" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:duryear">10</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years but are typically contracted for initial periods of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48767212e2421-wk-Fact-A835AB9F731EB6484225A8A414388B35" name="tyl:RevenueFromContractWithCustomerTypicalContractTerm" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. Non-recurring revenues are derived from all other revenue categories.</span></div><ix:continuation id="TextSelection-FA8C6971FD2A58D2F283A8A41494C562-0"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:56%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2564-wk-Fact-30911EA7AA6AEAB0520AA8A414686F4C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">690,156</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2583-wk-Fact-B6EEB3226981F449D22BA8A41464C120" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,514</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2603-wk-Fact-9D198931E7E028B6EF08A8A4146885F6" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2622-wk-Fact-FD666F52F398B73CE93EA8A4146888C1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">726,670</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2642-wk-Fact-A1E2273127F37935D65BA8A41464082F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">295,193</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2661-wk-Fact-8B6237241902066AE3E5A8A41464EE92" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">58,308</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2680-wk-Fact-4830722AE0DBA4A78B8CA8A414641880" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,256</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2700-wk-Fact-D2844D0178D253609A89A8A414643FEA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">359,757</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2725-wk-Fact-DB24A2418A8046BCA118A8A414784CC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2744-wk-Fact-8D5EE1986C9D8B1C1BC9A8A4147C3AE1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e2763-wk-Fact-827C001CE58629B02EC1A8A414741DA4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2814-wk-Fact-C26FA4F9A36317FC454CA8A413EE3614" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,000,845</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2833-wk-Fact-6AFC41ABBE0F4CA0F8BFA8A4147C8366" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">94,822</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e2853-wk-Fact-E0DCC0403C46DBB23452A8A414380E16" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,240</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e2873-wk-Fact-864F481B04E356A536C8A8A41464106D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,086,427</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:56%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3014-wk-Fact-03C3C0935ABD73D77EF3A8A4140A7271" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">570,645</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3033-wk-Fact-0B86B726E8FCF2079010A8A414060297" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">34,424</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3053-wk-Fact-A1C3977165F1213C199FA8A4140E50DC" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3072-wk-Fact-54C5E85EC20094A53E21A8A4140AAF3E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">605,069</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3092-wk-Fact-2E19711ABB03CBDB7C04A8A4140E015A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">269,400</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3111-wk-Fact-FC1B4432DE4C1713E874A8A4140AE7A2" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">55,932</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3130-wk-Fact-EC9122DE14BD14C48539A8A4140A7C35" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,881</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3150-wk-Fact-A059957CEFE12496D74CA8A4140EC055" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">330,213</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3175-wk-Fact-A7AAA5D60B10837B8134A8A4140A17A1" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">13,155</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3194-wk-Fact-6395195FCA1CA8134B69A8A413FA6E8C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e3213-wk-Fact-AB454F78E238A7E98029A8A413EAD41D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">13,155</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3264-wk-Fact-1B146729CE3E3D587601A8A413F6D416" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">853,200</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3283-wk-Fact-A471588B051B8F271550A8A413FA6F3E" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">90,356</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e3303-wk-Fact-4739B4FAA25F6310C43DA8A413E1C588" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">8,274</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3323-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">935,282</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:55%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:11%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:7%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:8%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3465-wk-Fact-00EDE7F437BDC166E5DD1BD94567F026" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">502,018</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3484-wk-Fact-AD4B7EBA77BE6EECE75C1BD94A9F49A0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,477</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3504-wk-Fact-7831956FD6D54860896B1BD94F683B4B" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3523-wk-Fact-9787E56143B31D1156641BD9532D8135" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">531,495</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3543-wk-Fact-D1872DB020D4A5DA7C611BD9553AE6F3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">252,690</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3562-wk-Fact-0AFAED7B1C5C49B2D3E61BD95A0C42D4" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">52,102</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3581-wk-Fact-0EBE6D641B995E97EF9B1BD95EE8F517" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,612</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3601-wk-Fact-FC2AC3637DA4BEF27BFC1BD9625B8160" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">309,404</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3626-wk-Fact-8F95285CE4FA7C926388A8A414067511" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">10,425</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3645-wk-Fact-DD2059B094EBCF2FF3C2A8A41402A163" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e3664-wk-Fact-9151A3AEB604C1140F5FA8A414069429" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">10,425</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3715-wk-Fact-80CD0A31757594F83E70A8A41406AB8F" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">765,133</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3734-wk-Fact-224701AFC1BA77577994A8A41406FCC9" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,579</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48767212e3754-wk-Fact-F848E53917D07C81857FA8A414025134" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,813</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48767212e3774-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">840,899</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:continuation><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-32</span></div></div><hr style="page-break-after:always"></hr><div><a id="sADB8E5B57E3E59179EC41E9FB09C1603"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:16px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(16)</span></div></td><td style="vertical-align:top;"><ix:continuation id="TextSelection-BAF72BBBAA7598689BF6A8A414941D77-0" continuedAt="TextSelection-BAF72BBBAA7598689BF6A8A414941D77-1"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</span></div></ix:continuation></td></tr></table><ix:continuation id="TextSelection-BAF72BBBAA7598689BF6A8A414941D77-1" continuedAt="TextSelection-7AB03E57E77C7549B2A1A8A41494AA74-0"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="TextSelection-B7EE48BF0C7EFF7C37FCA8A414949CF6-0-wk-Fact-E2AF24AED8F844C5F228A8A4146489D2" continuedAt="TextSelection-7E5D9FC3920D57B99E76A8A4149431C2-0" escape="true"><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"></td></tr><tr><td style="width:52%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:21%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:21%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise Software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e665-wk-Fact-9A13F96D46FA95BCF172A8A4140E5249" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">386,115</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e684-wk-Fact-0A073056BA8016DEDACDA8A414404724" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">327,521</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e704-wk-Fact-2DCAF9A925021A295AB2A8A414442A7F" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,210</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e723-wk-Fact-1A7114DDC6DF5B263A94A8A414409834" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,018</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e748-wk-Fact-316444E80FCA7ECB34FCA8A4140EC669" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,369</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e767-wk-Fact-08659F133DB3CC9BA09EA8A41440B1ED" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,397</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:normal;">Totals</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e797-wk-Fact-46EF0C643D08E4B52B41A8A4140A0134" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">412,694</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e816-wk-Fact-18685048AF3CDE2659F1A8A41412680F" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">350,936</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:continuation id="TextSelection-7E5D9FC3920D57B99E76A8A4149431C2-0"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:76%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:21%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e887-wk-Fact-18685048AF3CDE2659F1A8A41412680F" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">350,936</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferral of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e907-wk-Fact-DD63D5083C90923C7C6AA8A41417C99C" name="tyl:ContractWithCustomerLiabilityIncreaseFromDeferral" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">993,109</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recognition of deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d48760025e932-wk-Fact-AC60AE8FEEB1F1AB87F1A8A41448DF37" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">931,351</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48760025e963-wk-Fact-46EF0C643D08E4B52B41A8A4140A0134" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">412,694</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate amount of transaction price allocated to the remaining performance obligations represents contracted revenue that has not yet been recognized ("Backlog"), which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. Backlog as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760025e982-wk-Fact-745165322AF5C9740533A8A41470B309" name="us-gaap:RevenueRemainingPerformanceObligation" contextRef="FI2019Q4" unitRef="usd" decimals="-7" scale="9" format="ixt:numdotdecimal">1.46</ix:nonFraction> billion</span></span><span style="font-family:inherit;font-size:10pt;">, of which we expect to recognize approximately </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d48760025e986-wk-Fact-3B44D3E872477F9F4DF4A8A41440C0AA" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" contextRef="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01" unitRef="number" decimals="2" scale="-2" format="ixt:numdotdecimal">49</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> as revenue over the next </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48760025e990-wk-Fact-52A678A3242347E9907A1BEBEF76F9C8" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" contextRef="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01" format="ixt-sec:durmonth">12</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> months and the remainder thereafter.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s9D439D27224E519C90E26DFC256625C3"></a></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(17)&#160;&#160;&#160;&#160;<ix:continuation id="TextSelection-7AB03E57E77C7549B2A1A8A41494AA74-0" continuedAt="TextSelection-7AB03E57E77C7549B2A1A8A41494AA74-1">DEFERRED COMMISSIONS</ix:continuation></span></div><ix:continuation id="TextSelection-7AB03E57E77C7549B2A1A8A41494AA74-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized commensurate with the recognition of associated revenue over a period of benefit that we have determined to be </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d48760860e584-wk-Fact-C5F331BA6EAFACF0656DA8A4143CDBBB" name="tyl:SalesCommissionsAmortizationPeriod" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember" format="ixt-sec:durwordsen">seven years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">. Deferred commissions were&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760860e588-wk-Fact-4B0FBA02D6B16E40E205A8A414405F9F" name="us-gaap:CapitalizedContractCostNet" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">29.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760860e592-wk-Fact-848C1DDEC58D51789D24A8A4140E7A1C" name="us-gaap:CapitalizedContractCostNet" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">21.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, as of December&#160;31, 2019, and 2018 respectively. Amortization expense was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760860e596-wk-Fact-8DF1CDC3EA4DB3EB218FA8A4144891DC" name="us-gaap:CapitalizedContractCostAmortization" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">17.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760860e601-wk-Fact-6BF19B8FC17EA207F935A8A4140EDA60" name="us-gaap:CapitalizedContractCostAmortization" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">15.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d48760860e605-wk-Fact-DB5ACE790F4C08C0F6DC39F7B6B4DD0C" name="us-gaap:CapitalizedContractCostAmortization" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">11.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for the&#160;</span><span style="font-family:inherit;font-size:10pt;">twelve</span><span style="font-family:inherit;font-size:10pt;"> months ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. There were no indicators of impairment in relation to the costs capitalized for the periods presented. Deferred commissions have been included with prepaid expenses in the accompanying consolidated balance sheets. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of comprehensive income.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sD19F8B843AB95C45B2EF94C809168E34"></a></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(18)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SubsequentEventsTextBlock" id="TextSelection-FDB0E22FF048156BAC71A8A414941243-0-wk-Fact-94BF29B2EA61E61658FBA8A414604DC7" continuedAt="TextSelection-FDB0E22FF048156BAC71A8A414941243-1" escape="true">SUBSEQUENT EVENTS</ix:nonNumeric></span></div><ix:continuation id="TextSelection-FDB0E22FF048156BAC71A8A414941243-1"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">There are no material events or transactions that have occurred subsequent to </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:continuation><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-33</span></div></div><hr style="page-break-after:always"></hr><div><a id="s5DFBC55D4AAD590A8E81E5BBAD5C5C0C"></a></div><div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><div style="line-height:120%;padding-left:4px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(19)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:QuarterlyFinancialInformationTextBlock" id="TextSelection-4AE2CE7B7669221858C7A8A41494BE11-0-wk-Fact-85E70718CA073D23FCD9A8A41460FC89" continuedAt="TextSelection-4AE2CE7B7669221858C7A8A41494BE11-1" escape="true">QUARTERLY FINANCIAL INFORMATION (unaudited)</ix:nonNumeric></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock" id="TextSelection-41D9824527B1CE5E3366A8A4149465F0-0-wk-Fact-7C5DD38E5DC19B6EE665A8A41460F4A4" escape="true"><ix:continuation id="TextSelection-4AE2CE7B7669221858C7A8A41494BE11-1"><div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table contains selected financial information from unaudited statements of income for each quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">:</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.62583095916429%;border-collapse:collapse;text-align:left;"><tr><td colspan="32"></td></tr><tr><td style="width:29%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Quarters Ended</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1136-wk-Fact-9A8BF168A9068BC3306E1BF1BAEF914D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">288,837</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1155-wk-Fact-B528F59FEF5004118491A8A41440C14A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">275,400</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1174-wk-Fact-F1DD68EAC1E506B40EB4A8A414402E38" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">275,124</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1194-wk-Fact-DE05E913DD01B6C78EA8A8A41444FF1D" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">247,066</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1213-wk-Fact-D9227CD1AEE6B3AB151DA8A41444604C" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">241,981</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1233-wk-Fact-F8CB14AF43B8E701CE76A8A4144035EF" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">236,067</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1252-wk-Fact-8FD7EC86A6E0C5233CBDA8A41440C28A" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">236,060</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1271-wk-Fact-A74D16587B7BCE6E7CFFA8A4144011D0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">221,174</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross profit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1286-wk-Fact-30F73C6A22C97A6565091BF1BAE83732" name="us-gaap:GrossProfit" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">142,275</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1305-wk-Fact-276B73743ED4B848A0FAA8A41438607C" name="us-gaap:GrossProfit" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,717</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1324-wk-Fact-C0567C8A2303F48DD31EA8A414481218" name="us-gaap:GrossProfit" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">127,860</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1344-wk-Fact-C5A22F3BF98F9EFE452BA8A414483370" name="us-gaap:GrossProfit" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">116,048</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1363-wk-Fact-CC88494558F599DD7231A8A4144445BF" name="us-gaap:GrossProfit" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">115,871</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1382-wk-Fact-00160948EAA428578913A8A414486749" name="us-gaap:GrossProfit" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">111,626</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1402-wk-Fact-45A597BA6FEC807AF221A8A41440BC88" name="us-gaap:GrossProfit" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">109,276</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1421-wk-Fact-F3A08EEDB2078FACE14DA8A4144011BF" name="us-gaap:GrossProfit" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">102,805</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1441-wk-Fact-289EC4BAAC7AC0ACE26F1BF1BAEB6380" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">47,790</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1460-wk-Fact-C4FF111F57DEEB4E149AA8A414487D06" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,552</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1479-wk-Fact-9C1F6009E80DE9990364A8A41440AF92" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,419</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1499-wk-Fact-C408CEA05CA55889775EA8A41444C44A" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">35,077</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1518-wk-Fact-8E54D0AB90C860D0250CA8A414440FF3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,107</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1537-wk-Fact-DB198F1ED0F69EA6CD28A8A41444DB9B" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">38,626</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1557-wk-Fact-B6C42DC0F737C208697BA8A41444411B" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,700</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1576-wk-Fact-F8D20611A76ED912D5C9A8A4144CD3C6" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,437</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1596-wk-Fact-42CBC0E12BE2653845AE1BF1BAE0321E" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">46,790</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1615-wk-Fact-C4D19D518A049F093CC5A8A41444A1CB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,390</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1634-wk-Fact-2976E3220D2890C9C7A1A8A41440E962" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1654-wk-Fact-A5BF5863671055447BFDA8A41444A96C" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1673-wk-Fact-318C11F71A5E226D1B30A8A41448FD77" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,552</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1692-wk-Fact-FC49AEBF54EA6EE221FEA8A414443C09" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">38,924</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1712-wk-Fact-F4342FD5E4AA111119EDA8A414481F14" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,161</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1731-wk-Fact-62C580B5E39FD3501061A8A41444E14A" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,825</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per diluted share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1756-wk-Fact-EA0079EECA5B3C9598C0A8A41444F5CC" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.15</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1775-wk-Fact-2E70124A2CC77AAA3AC8A8A4144C55F6" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q3QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.00</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1794-wk-Fact-A6B183F6BC1AE8FA52C0A8A414489685" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q2QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.80</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1814-wk-Fact-398C47C438285542C509A8A4143C62C6" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q1QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.69</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1833-wk-Fact-412B58A70900027807C2A8A414489E86" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.79</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1853-wk-Fact-AA4698B43B43CC172FA5A8A41444A73C" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q3QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.96</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1872-wk-Fact-90D08891161A5ECBBEBCA8A4144401EE" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q2QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.97</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1891-wk-Fact-3C5D7E62674D1559AAF9A8A41444B3F3" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q1QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.95</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares used in computing diluted</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; earnings per share</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1909-wk-Fact-14F95D3FF50011F406C81BF1BAE5616B" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q4QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,736</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1928-wk-Fact-56D5C4A84ADEEA418ED9A8A4143CC53A" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q3QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,280</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1947-wk-Fact-22D9A154453BE6E57EC5A8A41444A389" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q2QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">39,813</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1967-wk-Fact-023E1A351C3666E8961DA8A414443895" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q1QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">39,585</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e1986-wk-Fact-A8A80B9D296B37F79413A8A4143C4340" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q4QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">39,891</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e2005-wk-Fact-B6300EA80F25A67E6DB5A8A4143C273D" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q3QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,528</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e2025-wk-Fact-E5CE8E7E9EF3BE4535DDA8A4143CA2A0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q2QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">40,224</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d48769918e2044-wk-Fact-C396F782CE3586B9CEE5A8A41440E8FE" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q1QTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">39,836</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">F-34</span></div></div>	</div></body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23
<SEQUENCE>2
<FILENAME>tyl12312019exhibit-23.htm
<DESCRIPTION>EXHIBIT 23
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sE1EA672650B359728BE825F261441EC7"></a></div><div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Exhibit 23</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Consent of Independent Registered Public Accounting Firm</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">We consent to the incorporation by reference in the following Registration Statements: </font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">(1)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Registration Statement (Form S-8 No. 333-225011) pertaining to the Tyler Technologies, Inc. 2018 Stock Option Plan,</font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">(2)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Registration Statement (Form S-8 No. 333-182318) pertaining to the Tyler Technologies, Inc. Employee Stock Purchase Plan;</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">of our reports dated </font><font style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</font><font style="font-family:inherit;font-size:10pt;">, with respect to the consolidated financial statements of Tyler Technologies, Inc., and the effectiveness of internal control over financial reporting of Tyler Technologies, Inc., included in this Annual Report (Form 10-K) of Tyler Technologies, Inc. for the year ended </font><font style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</font><font style="font-family:inherit;font-size:10pt;">.</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ ERNST&#160;&amp; YOUNG LLP</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Dallas, Texas</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</font><font style="font-family:inherit;font-size:10pt;">&#32;</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>tyl12312019exhibit311.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s0CD5316E85D1540AAAB32E668EA76705"></a></div><div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Exhibit 31.1</font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">CERTIFICATIONS</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I, H. Lynn Moore, Jr., certify that:</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-left:0px;text-indent:0px;"><font style="font-family:inherit;font-size:10pt;padding-right:48px;">1.</font><font style="font-family:inherit;font-size:10pt;">I have reviewed this annual report on Form 10-K of Tyler Technologies, Inc.;</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">2. </font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">3.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">4. </font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant&#8217;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 our financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for Tyler and have:</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">a.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 divisions, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">b.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">c.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">d.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 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</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">5.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 the registrant&#8217;s board of directors (or persons performing the equivalent function):</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">a.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal controls over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">b.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal controls over financial reporting.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:89.62962962962962%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:33%;"></td><td style="width:16%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:46%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Date: February&#160;19, 2020</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ H. Lynn Moore, Jr.</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">H. Lynn Moore, Jr.</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">President and Chief Executive Officer</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>tyl12312019exhibit312.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sF4C7F4616B265AB6AED0543E50DA2347"></a></div><div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Exhibit 31.2</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">CERTIFICATIONS</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I, Brian K. Miller, certify that:</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;padding-right:48px;">1.</font><font style="font-family:inherit;font-size:10pt;">I have reviewed this annual report on Form 10-K of Tyler Technologies, Inc.;</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">2. </font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">3.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">4. </font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant&#8217;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 our financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for Tyler and have:</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;</font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">a.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 divisions, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">b.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">c.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">d.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 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</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">5.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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 the registrant&#8217;s board of directors (or persons performing the equivalent function):</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">a.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">All significant deficiencies and material weaknesses in the design or operation of internal controls over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:48px;"><font style="font-family:inherit;font-size:10pt;">b.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal controls over financial reporting.&#160;</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:26%;"></td><td style="width:25%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:44%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Date: February&#160;19, 2020</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ Brian K. Miller</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Brian K. Miller</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Executive Vice President and Chief Financial Officer</font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<FILENAME>tyl12312019exhibit321.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<!-- Document created using Wdesk 1 -->
		<!-- Copyright 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s45DDCD681E2053E1AB04528010B8E3D4"></a></div><div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Exhibit 32.1</font></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">CERTIFICATION PURSUANT TO</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">H. Lynn Moore, Jr., President and Chief Executive Officer of Tyler Technologies, Inc., (the &#8220;Company&#8221;) and Brian K. Miller, Executive Vice President and Chief Financial Officer of the Company, each certify pursuant to section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section&#160;1350, that:</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">1.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The Report fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934 as amended; and</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">2.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Corporation.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:92.78752436647173%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"></td></tr><tr><td style="width:23%;"></td><td style="width:19%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:53%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Date: February&#160;19, 2020</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ H. Lynn Moore, Jr.</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">H. Lynn Moore, Jr.</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">President and Chief Executive Officer</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">By:</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ Brian K. Miller</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Brian K. Miller</font></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Executive Vice President and Chief Financial Officer</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">A signed original of this written statement required by Section&#160;906 has been provided to Tyler Technologies, Inc. and will be retained by Tyler Technologies, Inc. and furnished to the Securities and Exchange Commission upon request.</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>tyl-20191231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.tylertech.com/20191231" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:tyl="http://www.tylertech.com/20191231" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:import namespace="http://fasb.org/srt-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/srt/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-gaap/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-roles/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/currency/2019-01-31" schemaLocation="https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/dei/2019-01-31" schemaLocation="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/exch/2019-01-31" schemaLocation="https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/invest/2013-01-31" schemaLocation="http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/naics/2017-01-31" schemaLocation="http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd" />
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20191231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20191231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20191231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple" />
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tyl-20191231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple" />
      <link:roleType id="AccruedLiabilities" roleURI="http://www.tylertech.com/role/AccruedLiabilities">
        <link:definition>2105100 - Disclosure - ACCRUED LIABILITIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" roleURI="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail">
        <link:definition>2405402 - Disclosure - Accrued Liabilities - Summary of Accrued Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccruedLiabilitiesTables" roleURI="http://www.tylertech.com/role/AccruedLiabilitiesTables">
        <link:definition>2305301 - Disclosure - Accrued Liabilities (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Acquisitions" roleURI="http://www.tylertech.com/role/Acquisitions">
        <link:definition>2102100 - Disclosure - ACQUISITIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsAssetsAndLiabilitiesAcquiredDetails" roleURI="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails">
        <link:definition>2402403 - Disclosure - Acquisitions - Assets and Liabilities Acquired (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsNarrativeDetail" roleURI="http://www.tylertech.com/role/AcquisitionsNarrativeDetail">
        <link:definition>2402402 - Disclosure - Acquisitions - Narrative (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsProFormaInformationDetails" roleURI="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails">
        <link:definition>2402404 - Disclosure - Acquisitions - Pro-forma Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionsTables" roleURI="http://www.tylertech.com/role/AcquisitionsTables">
        <link:definition>2302301 - Disclosure - Acquisitions (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsAndContingencies" roleURI="http://www.tylertech.com/role/CommitmentsAndContingencies">
        <link:definition>2113100 - Disclosure - COMMITMENTS AND CONTINGENCIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsAndContingenciesAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail">
        <link:definition>2413401 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheets" roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets">
        <link:definition>1002000 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>1002501 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfCashFlows" roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows">
        <link:definition>1003000 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfComprehensiveIncome" roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome">
        <link:definition>1001000 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsOfShareholdersEquity" roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity">
        <link:definition>1004000 - Statement - Consolidated Statements of Shareholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Cover" roleURI="http://www.tylertech.com/role/Cover">
        <link:definition>0001000 - Document - Cover</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredCommissions" roleURI="http://www.tylertech.com/role/DeferredCommissions">
        <link:definition>2117100 - Disclosure - DEFERRED COMMISSIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredCommissionsDetails" roleURI="http://www.tylertech.com/role/DeferredCommissionsDetails">
        <link:definition>2417401 - Disclosure - Deferred Commissions (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredRevenueAndPerformanceObligations" roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations">
        <link:definition>2116100 - Disclosure - DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails">
        <link:definition>2416402 - Disclosure - Deferred Revenue and Performance Obligations - Deferred Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredRevenueAndPerformanceObligationsNarrativeDetails" roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails">
        <link:definition>2416403 - Disclosure - Deferred Revenue and Performance Obligations - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeferredRevenueAndPerformanceObligationsTables" roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables">
        <link:definition>2316301 - Disclosure - Deferred Revenue and Performance Obligations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DisaggregationOfRevenue" roleURI="http://www.tylertech.com/role/DisaggregationOfRevenue">
        <link:definition>2115100 - Disclosure - DISAGGREGATION OF REVENUE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DisaggregationOfRevenueDetails" roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueDetails">
        <link:definition>2415402 - Disclosure - Disaggregation of Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DisaggregationOfRevenueTables" roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueTables">
        <link:definition>2315301 - Disclosure - Disaggregation of Revenue (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShare" roleURI="http://www.tylertech.com/role/EarningsPerShare">
        <link:definition>2110100 - Disclosure - EARNINGS PER SHARE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShareAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail">
        <link:definition>2410403 - Disclosure - Earnings Per Share - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" roleURI="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail">
        <link:definition>2410402 - Disclosure - Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShareTables" roleURI="http://www.tylertech.com/role/EarningsPerShareTables">
        <link:definition>2310301 - Disclosure - Earnings Per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeeBenefitPlans" roleURI="http://www.tylertech.com/role/EmployeeBenefitPlans">
        <link:definition>2112100 - Disclosure - EMPLOYEE BENEFIT PLANS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeeBenefitPlansAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail">
        <link:definition>2412401 - Disclosure - Employee Benefit Plans - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssets" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets">
        <link:definition>2104100 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail">
        <link:definition>2404404 - Disclosure - Goodwill and Other Intangible Assets - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail">
        <link:definition>2404405 - Disclosure - Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail">
        <link:definition>2404402 - Disclosure - Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail">
        <link:definition>2404406 - Disclosure - Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail">
        <link:definition>2404403 - Disclosure - Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillAndOtherIntangibleAssetsTables" roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables">
        <link:definition>2304301 - Disclosure - Goodwill and Other Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTax" roleURI="http://www.tylertech.com/role/IncomeTax">
        <link:definition>2107100 - Disclosure - INCOME TAX</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail">
        <link:definition>2407405 - Disclosure - Income Tax - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" roleURI="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail">
        <link:definition>2407402 - Disclosure - Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" roleURI="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail">
        <link:definition>2407403 - Disclosure - Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" roleURI="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail">
        <link:definition>2407404 - Disclosure - Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxTables" roleURI="http://www.tylertech.com/role/IncomeTaxTables">
        <link:definition>2307301 - Disclosure - Income Tax (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Leases" roleURI="http://www.tylertech.com/role/Leases">
        <link:definition>2111100 - Disclosure - LEASES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/LeasesAdditionalInformationDetail">
        <link:definition>2411402 - Disclosure - Leases - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesMaturityOfLeaseLiabilitiesDetails" roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails">
        <link:definition>2411406 - Disclosure - Leases - Maturity of lease liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesMaturityOfLeaseLiabilitiesDetailsCalc2" roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2">
        <link:definition>2411406 - Disclosure - Leases - Maturity of lease liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail">
        <link:definition>2411407 - Disclosure - Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails">
        <link:definition>2411408 - Disclosure - Leases - Schedule of future minimum operating rental income (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleOfLeaseCostDetails" roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails">
        <link:definition>2411403 - Disclosure - Leases - Schedule of lease cost (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails">
        <link:definition>2411404 - Disclosure - Leases - Schedule of leases assets and liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleOfOtherInformationRelatedToLeasesDetails" roleURI="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails">
        <link:definition>2411405 - Disclosure - Leases - Schedule of other information related to leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://www.tylertech.com/role/LeasesTables">
        <link:definition>2311301 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyAndEquipmentNet" roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNet">
        <link:definition>2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyAndEquipmentNetAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail">
        <link:definition>2403403 - Disclosure - Property and Equipment, Net - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail">
        <link:definition>2403402 - Disclosure - Property and Equipment, Net - Summary of Property and Equipment, Net (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyAndEquipmentNetTables" roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetTables">
        <link:definition>2303301 - Disclosure - Property and Equipment, Net (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="QuarterlyFinancialInformationUnaudited" roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited">
        <link:definition>2119100 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail">
        <link:definition>2419402 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="QuarterlyFinancialInformationUnauditedTables" roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables">
        <link:definition>2319301 - Disclosure - Quarterly Financial Information (unaudited) (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevolvingLineOfCredit" roleURI="http://www.tylertech.com/role/RevolvingLineOfCredit">
        <link:definition>2106100 - Disclosure - Revolving Line of Credit</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevolvingLineOfCreditAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail">
        <link:definition>2406401 - Disclosure - Revolving Line of Credit - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentAndRelatedInformation" roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformation">
        <link:definition>2114100 - Disclosure - SEGMENT AND RELATED INFORMATION</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentAndRelatedInformationAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail">
        <link:definition>2414402 - Disclosure - Segment and Related Information - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail">
        <link:definition>2414404 - Disclosure - Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail">
        <link:definition>2414403 - Disclosure - Segment and Related Information - Schedule of Segment Revenues and Operations (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentAndRelatedInformationTables" roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationTables">
        <link:definition>2314301 - Disclosure - Segment and Related Information (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensation" roleURI="http://www.tylertech.com/role/ShareBasedCompensation">
        <link:definition>2109100 - Disclosure - SHARE-BASED COMPENSATION</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail">
        <link:definition>2409402 - Disclosure - Share-Based Compensation - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" roleURI="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail">
        <link:definition>2409406 - Disclosure - Share-Based Compensation - Other Information Pertaining to Option Activity (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationRsuAndPsuActivityDetails" roleURI="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails">
        <link:definition>2409404 - Disclosure - Share-Based Compensation - RSU and PSU Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationStockOptionActivityDetail" roleURI="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail">
        <link:definition>2409405 - Disclosure - Share-Based Compensation - Stock Option Activity (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail">
        <link:definition>2409407 - Disclosure - Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail">
        <link:definition>2409403 - Disclosure - Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedCompensationTables" roleURI="http://www.tylertech.com/role/ShareBasedCompensationTables">
        <link:definition>2309301 - Disclosure - Share-Based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareholdersEquity" roleURI="http://www.tylertech.com/role/ShareholdersEquity">
        <link:definition>2108100 - Disclosure - SHAREHOLDERS&#8217; EQUITY</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareholdersEquityAdditionalInformationDetail" roleURI="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail">
        <link:definition>2408403 - Disclosure - Shareholders' Equity - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" roleURI="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail">
        <link:definition>2408402 - Disclosure - Shareholders' Equity - Summary of Activities in Common Stock (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareholdersEquityTables" roleURI="http://www.tylertech.com/role/ShareholdersEquityTables">
        <link:definition>2308301 - Disclosure - Shareholders' Equity (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://www.tylertech.com/role/SubsequentEvents">
        <link:definition>2118100 - Disclosure - SUBSEQUENT EVENTS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPolicies" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies">
        <link:definition>2101100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails">
        <link:definition>2401403 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails">
        <link:definition>2401404 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
        <link:definition>2201201 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails">
        <link:definition>2401405 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryOfSignificantAccountingPoliciesTables" roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables">
        <link:definition>2301302 - Disclosure - Summary of Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="tyl_AccountingPoliciesLineItems" name="AccountingPoliciesLineItems" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_AccountingPoliciesTable" name="AccountingPoliciesTable" nillable="true" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_AccruedAcquisitionPurchasePrice" name="AccruedAcquisitionPurchasePrice" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="tyl_AcquiredSoftwareMember" name="AcquiredSoftwareMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" name="AmortizationofCustomerandTradeNamesIntangibleAssets" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_AppraisalAndTaxMember" name="AppraisalAndTaxMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_AppraisalServicesMember" name="AppraisalServicesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_AssumedConversionofDilutiveSecuritiesAbstract" name="AssumedConversionofDilutiveSecuritiesAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_BuildingAndLeaseholdImprovementsMember" name="BuildingAndLeaseholdImprovementsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" name="CapitalizedPostAcquisitionSoftwareDevelopmentCosts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_CaseloadPROLPMember" name="CaseloadPROLPMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_CivicLLCMember" name="CivicLLCMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_ComputerEquipmentAndPurchasedSoftwareMember" name="ComputerEquipmentAndPurchasedSoftwareMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" name="ContractWithCustomerLiabilityIncreaseFromDeferral" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_ContractWithCustomerLiabilityRollForward" name="ContractWithCustomerLiabilityRollForward" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_CorporateAndEliminationsMember" name="CorporateAndEliminationsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_CostMethodInvestmentOwnershipPercentage" name="CostMethodInvestmentOwnershipPercentage" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" name="CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_CourthouseTechnologiesLtdMember" name="CourthouseTechnologiesLtdMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_CreditAgreementMember" name="CreditAgreementMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" name="DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" name="DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="tyl_DenominatorAbstract" name="DenominatorAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_DigitalHealthDepartmentInc.Member" name="DigitalHealthDepartmentInc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_EnterpriseSoftwareMember" name="EnterpriseSoftwareMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_HardwareandOtherMember" name="HardwareandOtherMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_IncreaseDecreaseInOperatingLeaseLiabilities" name="IncreaseDecreaseInOperatingLeaseLiabilities" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_LathamNewYorkMember" name="LathamNewYorkMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_MPHoldingsParentInc.dbaMicroPactMember" name="MPHoldingsParentInc.dbaMicroPactMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_MicroPactAndMyCivicMember" name="MicroPactAndMyCivicMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_Modria.comMember" name="Modria.comMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_NonrecurringRevenueMember" name="NonrecurringRevenueMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_NumberOfBusinessUnits" name="NumberOfBusinessUnits" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant" />
  <xsd:element id="tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" name="NumberOfLegalProceedingsThatHaveMaterialEffect" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant" />
  <xsd:element id="tyl_NumberOfWhollyOwnedSubsidiaries" name="NumberOfWhollyOwnedSubsidiaries" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_NumberofOutstandingLetterofCredit" name="NumberofOutstandingLetterofCredit" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" name="NumeratorofBasicandDilutedEarningsPerShareAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_OperatingLeaseRightOfUseAssetsNonCash" name="OperatingLeaseRightOfUseAssetsNonCash" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_OperatingSegmentsAndCorporateNonSegmentMember" name="OperatingSegmentsAndCorporateNonSegmentMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_Radio1033LLCMember" name="Radio1033LLCMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_RecordHoldingsPtyLimitedMember" name="RecordHoldingsPtyLimitedMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_RecurringRevenueMember" name="RecurringRevenueMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_RemainingEstimatedEconomicLife" name="RemainingEstimatedEconomicLife" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_RestrictedStockUnitandPerformanceStockUnitMember" name="RestrictedStockUnitandPerformanceStockUnitMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_RetentionReceivableMember" name="RetentionReceivableMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_RevenueFromContractWithCustomerContractTerm" name="RevenueFromContractWithCustomerContractTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_RevenueFromContractWithCustomerPaymentTerm" name="RevenueFromContractWithCustomerPaymentTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" name="RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_RevenueFromContractWithCustomerTypicalContractTerm" name="RevenueFromContractWithCustomerTypicalContractTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SageDataSecurityLLCMember" name="SageDataSecurityLLCMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_SalesCommissionRenewalPeriod" name="SalesCommissionRenewalPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_SalesCommissionsAmortizationPeriod" name="SalesCommissionsAmortizationPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SceneDoc.Inc.Member" name="SceneDoc.Inc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" name="ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" name="ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_SegmentReportingInformationCapitalExpenditures" name="SegmentReportingInformationCapitalExpenditures" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" nillable="true" substitutionGroup="xbrli:item" type="num:perShareItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" name="ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SocrataInc.Member" name="SocrataInc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SoftwareAcquiredMember" name="SoftwareAcquiredMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SoftwareLicensesandRoyaltiesMember" name="SoftwareLicensesandRoyaltiesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SoftwareServicesMaintenanceandSubscriptionsMember" name="SoftwareServicesMaintenanceandSubscriptionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" name="StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" name="SubscriptionAndCirculationSaaSArrangementsServicesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" name="TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_TradeMasterInc.Member" name="TradeMasterInc.Member" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="tyl_YarmouthMaineMember" name="YarmouthMaineMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>tyl-20191231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" 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">
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilities" xlink:href="tyl-20191231.xsd#AccruedLiabilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Acquisitions" xlink:href="tyl-20191231.xsd#Acquisitions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:href="tyl-20191231.xsd#AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:href="tyl-20191231.xsd#AcquisitionsNarrativeDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:href="tyl-20191231.xsd#AcquisitionsProFormaInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsTables" xlink:href="tyl-20191231.xsd#AcquisitionsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:href="tyl-20191231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:href="tyl-20191231.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissions" xlink:href="tyl-20191231.xsd#DeferredCommissions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:href="tyl-20191231.xsd#DeferredCommissionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenue" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShare" xlink:href="tyl-20191231.xsd#EarningsPerShare" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareTables" xlink:href="tyl-20191231.xsd#EarningsPerShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlans" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTax" xlink:href="tyl-20191231.xsd#IncomeTax" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#IncomeTaxAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:href="tyl-20191231.xsd#IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:href="tyl-20191231.xsd#IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:href="tyl-20191231.xsd#IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxTables" xlink:href="tyl-20191231.xsd#IncomeTaxTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Leases" xlink:href="tyl-20191231.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#LeasesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2" xlink:href="tyl-20191231.xsd#LeasesMaturityOfLeaseLiabilitiesDetailsCalc2" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeaseCostDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesTables" xlink:href="tyl-20191231.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNet" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:href="tyl-20191231.xsd#RevolvingLineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensation" xlink:href="tyl-20191231.xsd#ShareBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:href="tyl-20191231.xsd#ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:href="tyl-20191231.xsd#ShareBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquity" xlink:href="tyl-20191231.xsd#ShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquityAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:href="tyl-20191231.xsd#ShareholdersEquityTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SubsequentEvents" xlink:href="tyl-20191231.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilities" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a2b836a7-cc87-0e4f-38a0-c91a29535622" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a2b836a7-cc87-0e4f-38a0-c91a29535622" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa7787c9-a33c-d084-bb97-5e2455f77a4c" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa7787c9-a33c-d084-bb97-5e2455f77a4c" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/Acquisitions" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_16015058-a7c0-a094-234b-9ebb33fa989f" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_16015058-a7c0-a094-234b-9ebb33fa989f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_583d3161-f22c-2bc8-587e-2ff15f67a984" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_583d3161-f22c-2bc8-587e-2ff15f67a984" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_6952ede2-eaeb-60b9-5b91-10fcfab3bd45" xlink:type="locator" />
    <link:calculationArc order="7" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_6952ede2-eaeb-60b9-5b91-10fcfab3bd45" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_eb846d95-753b-e075-ccbf-6263a98ed5fd" xlink:type="locator" />
    <link:calculationArc order="8" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_eb846d95-753b-e075-ccbf-6263a98ed5fd" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="locator" />
    <link:calculationArc order="9" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_8f5138e6-8223-a0f2-759f-12973f113145" xlink:type="locator" />
    <link:calculationArc order="10" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_8f5138e6-8223-a0f2-759f-12973f113145" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_0e2633de-0303-3391-6128-b729f9398b24" xlink:type="locator" />
    <link:calculationArc order="11" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_0e2633de-0303-3391-6128-b729f9398b24" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/AcquisitionsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1de780cc-9607-daa3-0bed-03c88ae94769" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1de780cc-9607-daa3-0bed-03c88ae94769" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_dd2cbe99-77d2-db20-3c91-750589881c79" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_dd2cbe99-77d2-db20-3c91-750589881c79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaap_ShortTermInvestments_19ee0686-4389-5dfa-deaf-cddb58597060" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_ShortTermInvestments_19ee0686-4389-5dfa-deaf-cddb58597060" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_f68f267d-78ad-b62f-6b0e-44daadd4feda" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_f68f267d-78ad-b62f-6b0e-44daadd4feda" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaap_IncomeTaxReceivable_13dfc034-83cc-39e4-5596-a73aa2e4ef6c" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_IncomeTaxReceivable_13dfc034-83cc-39e4-5596-a73aa2e4ef6c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_7832082e-fa39-48cc-a655-249c101debf9" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_OtherAssetsCurrent_7832082e-fa39-48cc-a655-249c101debf9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent_956f69b1-3144-4595-077e-0e27bb64187a" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_AccountsReceivableNetNoncurrent_956f69b1-3144-4595-077e-0e27bb64187a" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_8889606b-88fa-2d5e-3fb9-238bccdf9597" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_8889606b-88fa-2d5e-3fb9-238bccdf9597" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsAndOtherNoncurrentAssets" xlink:label="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_39f95f44-c3e6-28cf-7221-65c0b7684098" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_39f95f44-c3e6-28cf-7221-65c0b7684098" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_dcf3df0d-2155-35f6-715d-83a9bc9cf3fb" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_dcf3df0d-2155-35f6-715d-83a9bc9cf3fb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_9c889623-7b4f-c89a-bbb3-2bc9fb9ad9f5" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_AccountsPayableCurrent_9c889623-7b4f-c89a-bbb3-2bc9fb9ad9f5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_68a2ece1-b79e-558c-a305-f3ccae8c21c3" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_68a2ece1-b79e-558c-a305-f3ccae8c21c3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_56cca1d0-bac2-7952-41b1-26a356786b48" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_LongTermLineOfCredit_56cca1d0-bac2-7952-41b1-26a356786b48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_2bf7259d-4c54-f092-3b62-ad288c59c828" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_2bf7259d-4c54-f092-3b62-ad288c59c828" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_60654fa3-82c2-3e38-ce88-436acda713ac" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_60654fa3-82c2-3e38-ce88-436acda713ac" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_4d934b0d-59bc-ae5c-ffb9-b6ced82ff9f8" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_CommitmentsAndContingencies_4d934b0d-59bc-ae5c-ffb9-b6ced82ff9f8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_f05ab245-2bd1-7865-e7ed-1461a5a6155f" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_CommonStockValue_f05ab245-2bd1-7865-e7ed-1461a5a6155f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_9a00ddef-ccc2-f99c-735a-66b1e1849bbf" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_9a00ddef-ccc2-f99c-735a-66b1e1849bbf" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_988c1346-b444-a867-fe80-f3aec1443d54" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_988c1346-b444-a867-fe80-f3aec1443d54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62305d8f-d807-0fe8-d0ab-f2c2b3d03011" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62305d8f-d807-0fe8-d0ab-f2c2b3d03011" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue_e6069c8d-dfec-45ff-4b3f-643d125d5b29" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_TreasuryStockValue_e6069c8d-dfec-45ff-4b3f-643d125d5b29" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_928e20af-e738-4a2d-05b8-cf88fed11953" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_PreferredStockValue_928e20af-e738-4a2d-05b8-cf88fed11953" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_50231013-f048-89e7-0e20-ba139224c5f7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_50231013-f048-89e7-0e20-ba139224c5f7" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_ebef248a-da21-637d-9d28-3d42ff90e8e2" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_ebef248a-da21-637d-9d28-3d42ff90e8e2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_f0b9d825-b0b9-37fd-4d25-9294a8598890" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_ShareBasedCompensation_f0b9d825-b0b9-37fd-4d25-9294a8598890" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_5ae19a9f-6de6-075a-2c5a-a587d82ebad5" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_5ae19a9f-6de6-075a-2c5a-a587d82ebad5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_09b7b41a-f5a1-c45e-d61b-846fff462802" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_09b7b41a-f5a1-c45e-d61b-846fff462802" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_482834da-6583-c404-7c9c-83a9dbe6a330" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_482834da-6583-c404-7c9c-83a9dbe6a330" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_dfcbd6f7-83fa-00c2-bd9e-6c5c1de7d890" xlink:type="locator" />
    <link:calculationArc order="7" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_dfcbd6f7-83fa-00c2-bd9e-6c5c1de7d890" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_792166b2-b561-55ef-12fd-ca8b50f64a38" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_792166b2-b561-55ef-12fd-ca8b50f64a38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_c8705fc2-a98a-ac1d-2832-812bd5cae0da" xlink:type="locator" />
    <link:calculationArc order="9" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_c8705fc2-a98a-ac1d-2832-812bd5cae0da" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_8fa19589-0da6-036d-a79e-4bd2fa365a6d" xlink:type="locator" />
    <link:calculationArc order="10" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_8fa19589-0da6-036d-a79e-4bd2fa365a6d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="locator" />
    <link:calculationArc order="11" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_5C11F71515AA15721ED112ADA66F617F" xlink:type="locator" />
    <link:calculationArc order="12" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_5C11F71515AA15721ED112ADA66F617F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_403AE5A9D23F0F3E56C5F45E7EBCE282" xlink:type="locator" />
    <link:calculationArc order="13" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_403AE5A9D23F0F3E56C5F45E7EBCE282" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_50231013-f048-89e7-0e20-ba139224c5f7" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0f8df60b-841f-6df5-83c3-e4049d366459" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0f8df60b-841f-6df5-83c3-e4049d366459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_f6cd34b6-f238-abf8-9b6c-ac9d5fcdd140" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_f6cd34b6-f238-abf8-9b6c-ac9d5fcdd140" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_53ccf68b-cae8-c2bb-bc94-e3588a9c5ab9" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_53ccf68b-cae8-c2bb-bc94-e3588a9c5ab9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForSoftware" xlink:label="loc_us-gaap_PaymentsForSoftware_762299f1-2b7a-2409-b4a1-e33b683b691b" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsForSoftware_762299f1-2b7a-2409-b4a1-e33b683b691b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_6abb14d9-7978-302d-af6b-dbfc88f76bf2" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_6abb14d9-7978-302d-af6b-dbfc88f76bf2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_b5cf64b6-8899-5a9a-328a-4f0a312ae378" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_b5cf64b6-8899-5a9a-328a-4f0a312ae378" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_50231013-f048-89e7-0e20-ba139224c5f7" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_05859378-438b-57d1-1cca-74dc23f15c9a" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_05859378-438b-57d1-1cca-74dc23f15c9a" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_3f804297-91a1-3939-541d-a39b6288c9f9" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_3f804297-91a1-3939-541d-a39b6288c9f9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_f73833cd-0af4-c4d5-a7c4-1151269f1da3" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_f73833cd-0af4-c4d5-a7c4-1151269f1da3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_b130e83a-7e35-8950-f084-78ccb28f2eab" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_ProceedsFromStockPlans_b130e83a-7e35-8950-f084-78ccb28f2eab" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b88c060f-09b3-b6c0-4cdb-a77cb8e75ec8" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b88c060f-09b3-b6c0-4cdb-a77cb8e75ec8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_3549c1c0-2f2a-e44b-026b-b4042153e489" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_3549c1c0-2f2a-e44b-026b-b4042153e489" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_89fcc343-1933-1e77-588e-68d1c2f1a04f" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_89fcc343-1933-1e77-588e-68d1c2f1a04f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_fd239ba4-e6cc-957b-b0bd-94cec816c2dc" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_fd239ba4-e6cc-957b-b0bd-94cec816c2dc" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_34ef2de4-31f4-af29-db18-a8a433b83a78" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_34ef2de4-31f4-af29-db18-a8a433b83a78" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_7a3a9730-2927-590e-4e76-6aeb4157256e" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_7a3a9730-2927-590e-4e76-6aeb4157256e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredCommissions" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EarningsPerShare" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_fbdbb03d-8583-701f-d6e2-69f8229c6051" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_fbdbb03d-8583-701f-d6e2-69f8229c6051" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_90854703-859b-2c45-aef2-d270627b3141" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_90854703-859b-2c45-aef2-d270627b3141" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_8889606b-88fa-2d5e-3fb9-238bccdf9597" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_e11e8784-8f2d-ca3c-a9e8-a8115d54520c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_8889606b-88fa-2d5e-3fb9-238bccdf9597" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_e11e8784-8f2d-ca3c-a9e8-a8115d54520c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_65140cb5-12a8-2030-97e2-fa6daceadf40" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_8889606b-88fa-2d5e-3fb9-238bccdf9597" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_65140cb5-12a8-2030-97e2-fa6daceadf40" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTax" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1007d9fe-6d83-c6c6-eef9-c29803b14ec7" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1007d9fe-6d83-c6c6-eef9-c29803b14ec7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_7f37ab3b-992e-e1ba-f578-2c503524d7e4" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_7f37ab3b-992e-e1ba-f578-2c503524d7e4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_7c7e16b8-0aa9-c1c4-f1b1-272374ca83dc" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_7c7e16b8-0aa9-c1c4-f1b1-272374ca83dc" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_f57a32ed-0dd0-7e89-043f-8fdc81833b87" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_f57a32ed-0dd0-7e89-043f-8fdc81833b87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_54785d8a-952c-3257-3935-272224be412f" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_54785d8a-952c-3257-3935-272224be412f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_293be6dc-6bee-7ef3-e6e4-ebd60965ac94" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_293be6dc-6bee-7ef3-e6e4-ebd60965ac94" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_62c99efe-cd87-02a6-1dd7-a8a433c71d16" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_62c99efe-cd87-02a6-1dd7-a8a433c71d16" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_c4fdeb46-4aee-508e-a0bc-a3b116ae2542" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_c4fdeb46-4aee-508e-a0bc-a3b116ae2542" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_49a08e86-47b2-01fa-94cc-0320e102ec63" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_49a08e86-47b2-01fa-94cc-0320e102ec63" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="loc_us-gaap_DeferredTaxLiabilities_f31cb66e-0de8-54fb-4788-53b3cde0ec2f" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_f31cb66e-0de8-54fb-4788-53b3cde0ec2f" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_016b7683-cbad-909e-d2f3-a8a433b86541" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_016b7683-cbad-909e-d2f3-a8a433b86541" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_9448801d-0ed4-ffaa-b87b-19d6c55aba31" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_9448801d-0ed4-ffaa-b87b-19d6c55aba31" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_7fad0139-0d78-f900-cbaf-a8a43399620c" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_7fad0139-0d78-f900-cbaf-a8a43399620c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_55b78dfc-faa8-3c71-752a-e6857318d516" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_55b78dfc-faa8-3c71-752a-e6857318d516" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_f31cb66e-0de8-54fb-4788-53b3cde0ec2f" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a1d6e3d5-1382-48b3-8ff7-0e4305825a45" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a1d6e3d5-1382-48b3-8ff7-0e4305825a45" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_fee9ac69-74b7-a6ae-6ad8-e6860d7cdb9d" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_fee9ac69-74b7-a6ae-6ad8-e6860d7cdb9d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_29ebe8b5-ac00-5a10-4982-faaf28366a95" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_29ebe8b5-ac00-5a10-4982-faaf28366a95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_71972558-7fab-07a6-15ce-925bea4efcf4" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_15e17ec2-d527-455f-b2cd-0be7f92a9fd5" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_71972558-7fab-07a6-15ce-925bea4efcf4" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/IncomeTaxTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/Leases" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_48abcf97-737b-2b2c-8a8c-c74539d0b215" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_48abcf97-737b-2b2c-8a8c-c74539d0b215" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_9b040bc1-f43c-735d-05f7-679f319d2bb6" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_9b040bc1-f43c-735d-05f7-679f319d2bb6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_2f0ec234-4f20-7099-efb3-3c0ab4d024dd" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_2f0ec234-4f20-7099-efb3-3c0ab4d024dd" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_1ed751b1-5f94-4f6f-41e9-ef873c9f2bab" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_1ed751b1-5f94-4f6f-41e9-ef873c9f2bab" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8a8de21f-aadc-3af7-8c96-d54cf42b401b" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8a8de21f-aadc-3af7-8c96-d54cf42b401b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_b411eec9-2a0a-356b-e751-bd0680ab4d58" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_b411eec9-2a0a-356b-e751-bd0680ab4d58" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_64F36C21EE33C31E92882FE952DDB3E3_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_64F36C21EE33C31E92882FE952DDB3E3_07815ffa-512a-3133-dcbb-38e09d2626b9" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_64F36C21EE33C31E92882FE952DDB3E3_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_64F36C21EE33C31E92882FE952DDB3E3_07815ffa-512a-3133-dcbb-38e09d2626b9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_64F36C21EE33C31E92882FE952DDB3E3_b983c2d8-8318-0a7e-1a5c-6ab2933f7be5" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_64F36C21EE33C31E92882FE952DDB3E3_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_OperatingLeaseLiability_64F36C21EE33C31E92882FE952DDB3E3_b983c2d8-8318-0a7e-1a5c-6ab2933f7be5" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_4cf71329-74d6-54f3-cadb-acb7f1063f36" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_4cf71329-74d6-54f3-cadb-acb7f1063f36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_f2a573e7-27e5-db11-63c6-c460733b5ea3" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_f2a573e7-27e5-db11-63c6-c460733b5ea3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_398384fb-b756-b11a-1ea4-5a5cd4372c82" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_398384fb-b756-b11a-1ea4-5a5cd4372c82" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_832fb73d-9886-a0dd-5905-8e2ec54304d6" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_832fb73d-9886-a0dd-5905-8e2ec54304d6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_1f2c68db-a374-1412-5f1f-4edca1431bbb" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_1f2c68db-a374-1412-5f1f-4edca1431bbb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_e71cbb67-0324-15b7-66dc-376e90f3ca60" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_e71cbb67-0324-15b7-66dc-376e90f3ca60" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_9005984b-f9f3-7e07-ef97-4312f239321c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_9005984b-f9f3-7e07-ef97-4312f239321c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_2c3ecb96-369b-ef88-2076-3cdf583520ec" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_2c3ecb96-369b-ef88-2076-3cdf583520ec" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_2a6d5eb4-62af-e9bb-12b9-93fd54a3267f" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_2a6d5eb4-62af-e9bb-12b9-93fd54a3267f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_3e3a1252-0cfd-16d3-8d22-4bd8701af99f" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_3e3a1252-0cfd-16d3-8d22-4bd8701af99f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_70609221-dde8-f48b-0e0f-c35287333ce1" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_70609221-dde8-f48b-0e0f-c35287333ce1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_95d5cc2c-b689-8832-5113-752a79261cb4" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_e38e688f-e3df-720c-72b2-4d22e2221470" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_95d5cc2c-b689-8832-5113-752a79261cb4" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_ac3b1889-9651-365f-e4fc-e6474385db69" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaap_OperatingLeaseCost_88d5ba82-39dd-36ed-37fe-92977ff632df" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_ac3b1889-9651-365f-e4fc-e6474385db69" xlink:to="loc_us-gaap_OperatingLeaseCost_88d5ba82-39dd-36ed-37fe-92977ff632df" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="loc_us-gaap_ShortTermLeaseCost_4efa230c-b1e9-e41e-ae56-b6a8565f3216" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_ac3b1889-9651-365f-e4fc-e6474385db69" xlink:to="loc_us-gaap_ShortTermLeaseCost_4efa230c-b1e9-e41e-ae56-b6a8565f3216" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableLeaseCost" xlink:label="loc_us-gaap_VariableLeaseCost_3df88f41-850d-02ae-dd0b-ab0215935a95" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_ac3b1889-9651-365f-e4fc-e6474385db69" xlink:to="loc_us-gaap_VariableLeaseCost_3df88f41-850d-02ae-dd0b-ab0215935a95" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_b983c2d8-8318-0a7e-1a5c-6ab2933f7be5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_b983c2d8-8318-0a7e-1a5c-6ab2933f7be5" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_b983c2d8-8318-0a7e-1a5c-6ab2933f7be5" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/LeasesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_94cd7971-9d17-1c6e-6642-d4d38fb682b6" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_94cd7971-9d17-1c6e-6642-d4d38fb682b6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_7b7a3a8d-eb3d-0c85-68cc-b3d4d184ff23" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_7b7a3a8d-eb3d-0c85-68cc-b3d4d184ff23" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensation" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_120452df-d900-40f5-e99c-a8fd93010cf5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9f3b1474-e7ae-6e2a-ddab-96b753d45d4b" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_120452df-d900-40f5-e99c-a8fd93010cf5" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_9f3b1474-e7ae-6e2a-ddab-96b753d45d4b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_a335203f-3ccd-a617-8dc0-23ff64100eab" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_120452df-d900-40f5-e99c-a8fd93010cf5" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_a335203f-3ccd-a617-8dc0-23ff64100eab" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquity" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SubsequentEvents" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>tyl-20191231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilities" xlink:href="tyl-20191231.xsd#AccruedLiabilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Acquisitions" xlink:href="tyl-20191231.xsd#Acquisitions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:href="tyl-20191231.xsd#AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:href="tyl-20191231.xsd#AcquisitionsNarrativeDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:href="tyl-20191231.xsd#AcquisitionsProFormaInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsTables" xlink:href="tyl-20191231.xsd#AcquisitionsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:href="tyl-20191231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:href="tyl-20191231.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissions" xlink:href="tyl-20191231.xsd#DeferredCommissions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:href="tyl-20191231.xsd#DeferredCommissionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenue" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShare" xlink:href="tyl-20191231.xsd#EarningsPerShare" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareTables" xlink:href="tyl-20191231.xsd#EarningsPerShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlans" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTax" xlink:href="tyl-20191231.xsd#IncomeTax" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#IncomeTaxAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:href="tyl-20191231.xsd#IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:href="tyl-20191231.xsd#IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:href="tyl-20191231.xsd#IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxTables" xlink:href="tyl-20191231.xsd#IncomeTaxTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Leases" xlink:href="tyl-20191231.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#LeasesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeaseCostDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesTables" xlink:href="tyl-20191231.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNet" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:href="tyl-20191231.xsd#RevolvingLineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensation" xlink:href="tyl-20191231.xsd#ShareBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:href="tyl-20191231.xsd#ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:href="tyl-20191231.xsd#ShareBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquity" xlink:href="tyl-20191231.xsd#ShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquityAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:href="tyl-20191231.xsd#ShareholdersEquityTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SubsequentEvents" xlink:href="tyl-20191231.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AccruedLiabilities" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/Acquisitions" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_E8432EF8B3D0934590CC2F82CF497715" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_E8432EF8B3D0934590CC2F82CF497715" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_C42C322E973BC6187A6F2F82CF4AFEED" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_C42C322E973BC6187A6F2F82CF4AFEED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_45D3D8DD60FC26D390A42F82CF4A9F77" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_Goodwill_45D3D8DD60FC26D390A42F82CF4A9F77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CourthouseTechnologiesLtdMember" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CivicLLCMember" xlink:label="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MicroPactAndMyCivicMember" xlink:label="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SceneDoc.Inc.Member" xlink:label="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TradeMasterInc.Member" xlink:label="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CaseloadPROLPMember" xlink:label="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SocrataInc.Member" xlink:label="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SageDataSecurityLLCMember" xlink:label="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Radio1033LLCMember" xlink:label="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DigitalHealthDepartmentInc.Member" xlink:label="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Modria.comMember" xlink:label="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccruedAcquisitionPurchasePrice" xlink:label="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" xlink:label="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_60EADC41F396EB4A579541190CD9C008" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_Goodwill_60EADC41F396EB4A579541190CD9C008" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="locator" />
    <link:definitionArc order="14" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="locator" />
    <link:definitionArc order="15" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_6DC1D385186AF558419A2F82CF42A0D6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_6DC1D385186AF558419A2F82CF42A0D6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/AcquisitionsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:to="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:to="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:to="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareLicensesandRoyaltiesMember" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_1CEA75CEF70A0BC3800A1107C763F595" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_1CEA75CEF70A0BC3800A1107C763F595" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_B010BD39D20CB26EAC351107C7634459" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_TechnologyServiceMember_B010BD39D20CB26EAC351107C7634459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_9529144D1452FEBF57DE1107C763DBFD" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_MaintenanceMember_9529144D1452FEBF57DE1107C763DBFD" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AcquiredSoftwareMember" xlink:label="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_A1E7D664874E309E86CF1107C763A48A" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_AppraisalServicesMember_A1E7D664874E309E86CF1107C763A48A" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_21C7F6ABD94B547F96271107C764D3DF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_21C7F6ABD94B547F96271107C764D3DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfRevenueAbstract" xlink:label="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_119958FDA6434AB2E2C71107C76510E7" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_119958FDA6434AB2E2C71107C76510E7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_A078043E5A3985B73DAA1107C766BC66" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_A078043E5A3985B73DAA1107C766BC66" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:to="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:to="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:to="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:to="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:to="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_4609C207297FD902CAF341190D685C18" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_NetIncomeLoss_4609C207297FD902CAF341190D685C18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredCommissions" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostLineItems" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostTable" xlink:label="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:to="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:to="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:to="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:to="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_A202806EE983DF8CCB9439C1984A530C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:to="loc_srt_MinimumMember_A202806EE983DF8CCB9439C1984A530C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_8B20A8582E2647A8F53539C1984A8B27" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:to="loc_srt_MaximumMember_8B20A8582E2647A8F53539C1984A8B27" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionsAmortizationPeriod" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_DC0A1B28E4CBC01B437939C1984A07E2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_DC0A1B28E4CBC01B437939C1984A07E2" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:to="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:to="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:to="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_D81EC5E50AE0076BF3832FE9528FC40C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:to="loc_us-gaap_OperatingSegmentsMember_D81EC5E50AE0076BF3832FE9528FC40C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E1F3CAADAB3EE722D34C2FE9528FD42B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:to="loc_us-gaap_CorporateNonSegmentMember_E1F3CAADAB3EE722D34C2FE9528FD42B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:to="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:to="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_42A09FFAD70F11548A752FE9528F2EBF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:to="loc_tyl_EnterpriseSoftwareMember_42A09FFAD70F11548A752FE9528F2EBF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_C7F8EAC6B93D0715A9C02FE9528F88A0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:to="loc_tyl_AppraisalAndTaxMember_C7F8EAC6B93D0715A9C02FE9528F88A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:to="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityRollForward" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:to="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:to="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:to="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LicenseMember" xlink:label="loc_us-gaap_LicenseMember_0B288E02F3D8A5EFAD5841190A39CC09" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_LicenseMember_0B288E02F3D8A5EFAD5841190A39CC09" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_F0D48F6FB54D5674AD0441190A39FF79" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_F0D48F6FB54D5674AD0441190A39FF79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_A6723BEA68E305E9CEC241190A3A299B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_TechnologyServiceMember_A6723BEA68E305E9CEC241190A3A299B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_494928C37AF67433058741190A3A23EF" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_MaintenanceMember_494928C37AF67433058741190A3A23EF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_0B19E43D1174500328D641190A3AFD2C" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_tyl_AppraisalServicesMember_0B19E43D1174500328D641190A3AFD2C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredOverTimeMember" xlink:label="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:to="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:to="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:to="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_BBB76CD050C171DB1EA941190A3C820B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:to="loc_srt_MinimumMember_BBB76CD050C171DB1EA941190A3C820B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_F5D48C1879020713A25B41190A3C3795" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:to="loc_srt_MaximumMember_F5D48C1879020713A25B41190A3C3795" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:to="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:to="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecurringRevenueMember" xlink:label="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:to="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NonrecurringRevenueMember" xlink:label="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:to="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:to="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:to="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_C20F26C8FD188ABE5AF641190A3DB3A8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_tyl_EnterpriseSoftwareMember_C20F26C8FD188ABE5AF641190A3DB3A8" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_5EB9017F450C52FDFB1641190A3EEFFF" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_tyl_AppraisalAndTaxMember_5EB9017F450C52FDFB1641190A3EEFFF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_2309715C7C0836FF23FE41190A3E63CE" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_us-gaap_CorporateNonSegmentMember_2309715C7C0836FF23FE41190A3E63CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:to="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:to="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="loc_us-gaap_IntersegmentEliminationMember_33D61E39A2D7476A8F0541190A3F6DE7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_IntersegmentEliminationMember_33D61E39A2D7476A8F0541190A3F6DE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_265B3CC0A080E85E947541190A3FCEFF" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_OperatingSegmentsMember_265B3CC0A080E85E947541190A3FCEFF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E567BB79C18B29621CB341190A3F95EA" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_CorporateNonSegmentMember_E567BB79C18B29621CB341190A3F95EA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CorporateAndEliminationsMember" xlink:label="loc_tyl_CorporateAndEliminationsMember_6B9BE27D2DD292568BD041190A3FB93D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_tyl_CorporateAndEliminationsMember_6B9BE27D2DD292568BD041190A3FB93D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_A809D8428FF469C4613341190A4090C4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_A809D8428FF469C4613341190A4090C4" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_CACCFCF40B2BB40A9C7941190A40A8EC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_CACCFCF40B2BB40A9C7941190A40A8EC" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_E3FE39B01D01BCC7A53241190A403360" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_E3FE39B01D01BCC7A53241190A403360" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EarningsPerShare" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EarningsPerShareTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:to="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:to="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:to="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_CB2D71CA41656273E6012FE952CD2C37" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:to="loc_srt_MaximumMember_CB2D71CA41656273E6012FE952CD2C37" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_087BBB7273F1BDBB9003558B3B0A8E69" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_087BBB7273F1BDBB9003558B3B0A8E69" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_9A1465F71D2B07E3A902558B3B0A0ABA" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_9A1465F71D2B07E3A902558B3B0A0ABA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_46356C50DED11BD1BCB5558B3B0A2020" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_Goodwill_46356C50DED11BD1BCB5558B3B0A2020" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:to="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:to="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:to="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_DA257EE64C113B3222852FE953E676F2" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:to="loc_tyl_AppraisalAndTaxMember_DA257EE64C113B3222852FE953E676F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SocrataInc.Member" xlink:label="loc_tyl_SocrataInc.Member_113D5318B45CC13F6AED2FE953E60E63" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_tyl_SocrataInc.Member_113D5318B45CC13F6AED2FE953E60E63" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_595C06B97E3830AE28CA2FE953E6C884" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_595C06B97E3830AE28CA2FE953E6C884" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillRollForward" xlink:label="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:to="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTax" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:to="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/IncomeTaxTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/Leases" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasedAssetsLineItems" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:to="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:to="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:to="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_B2C618135E90938839D72FE952ECAAA3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:to="loc_srt_MinimumMember_B2C618135E90938839D72FE952ECAAA3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_70009031D1250CC17C3D2FE952EC6A12" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:to="loc_srt_MaximumMember_70009031D1250CC17C3D2FE952EC6A12" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RentalIncomeNonoperating" xlink:label="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/LeasesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:to="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:to="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:to="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_LathamNewYorkMember" xlink:label="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:to="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_YarmouthMaineMember" xlink:label="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:to="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForCapitalImprovements" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBuildings" xlink:label="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandMember" xlink:label="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransportationEquipmentMember" xlink:label="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:to="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:to="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_6766C055E074B75DB0D22F82CF390BD4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:to="loc_srt_MinimumMember_6766C055E074B75DB0D22F82CF390BD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_BB6FBEF4266268D7D9842F82CF39D045" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:to="loc_srt_MaximumMember_BB6FBEF4266268D7D9842F82CF39D045" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LetterOfCreditMember" xlink:label="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:to="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:to="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:to="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CreditAgreementMember" xlink:label="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:to="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:to="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:to="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_6316C28B02469AF63E8C2FE953C7B34C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:to="loc_srt_MinimumMember_6316C28B02469AF63E8C2FE953C7B34C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_BD22690A331423FAC16B2FE953C74A50" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:to="loc_srt_MaximumMember_BD22690A331423FAC16B2FE953C74A50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:to="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:to="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:to="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberofOutstandingLetterofCredit" xlink:label="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:to="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:to="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_F2C3810FD5C0E8C0FCD139C198B001EF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:to="loc_tyl_EnterpriseSoftwareMember_F2C3810FD5C0E8C0FCD139C198B001EF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_7AC433ADD13B3B0F1F4639C198B01B61" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:to="loc_tyl_AppraisalAndTaxMember_7AC433ADD13B3B0F1F4639C198B01B61" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfBusinessUnits" xlink:label="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForCapitalImprovements" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_F7A7C03984B93579330839C198B18B83" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_F7A7C03984B93579330839C198B18B83" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:to="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:to="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:to="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaterialReconcilingItemsMember" xlink:label="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:to="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:to="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:to="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LicenseMember" xlink:label="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_0C39E51A5DB0A6665C9941190A53C7F7" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_tyl_AppraisalServicesMember_0C39E51A5DB0A6665C9941190A53C7F7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:to="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:to="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CorporateAndEliminationsMember" xlink:label="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_D101023A48A4BEEE756E41190A55CD4D" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_D101023A48A4BEEE756E41190A55CD4D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:to="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:to="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:to="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:to="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_7587F5475F3FA01AB41741190A56A878" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_OperatingIncomeLoss_7587F5475F3FA01AB41741190A56A878" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SegmentReportingInformationCapitalExpenditures" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensation" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:to="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:to="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_A985160F36ECC34E77BA2FE9532BE0FA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:to="loc_srt_MinimumMember_A985160F36ECC34E77BA2FE9532BE0FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_4E459F1C6078D0E876052FE9532B8BD9" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:to="loc_srt_MaximumMember_4E459F1C6078D0E876052FE9532B8BD9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_856540B1D417C5180E382FE9532B0476" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:to="loc_us-gaap_EmployeeStockOptionMember_856540B1D417C5180E382FE9532B0476" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_07A3B3391527ABF94BB72FE9532B797F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_07A3B3391527ABF94BB72FE9532B797F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:to="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_06C61CD6761097327A512FE9532B4B0B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_06C61CD6761097327A512FE9532B4B0B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_0F95413D3857291DFC8D2FE9532B0B79" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_0F95413D3857291DFC8D2FE9532B0B79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:to="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:to="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" xlink:label="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:to="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:to="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_18C4136C1BB946C78C532FE9531B23B6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:to="loc_us-gaap_EmployeeStockOptionMember_18C4136C1BB946C78C532FE9531B23B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareholdersEquity" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:to="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:to="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SubsequentEvents" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesLineItems" xlink:label="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:type="locator" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesTable" xlink:label="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:to="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:to="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:to="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:to="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledRevenuesMember" xlink:label="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:to="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivableTypeDomain" xlink:label="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:to="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivableTypeDomain" xlink:label="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:to="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RetentionReceivableMember" xlink:label="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:to="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:to="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:to="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:to="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:to="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:to="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:to="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:to="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:to="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B_default" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:to="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecordHoldingsPtyLimitedMember" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:to="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionsAmortizationPeriod" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionRenewalPeriod" xlink:label="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="locator" />
    <link:definitionArc order="14" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="locator" />
    <link:definitionArc order="15" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RemainingEstimatedEconomicLife" xlink:label="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="locator" />
    <link:definitionArc order="16" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="locator" />
    <link:definitionArc order="17" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="locator" />
    <link:definitionArc order="18" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="locator" />
    <link:definitionArc order="19" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostMethodInvestmentOwnershipPercentage" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="locator" />
    <link:definitionArc order="20" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="locator" />
    <link:definitionArc order="21" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="locator" />
    <link:definitionArc order="22" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:to="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:to="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:to="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_E04E670151E48AEFD59C2F82CF73E360" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_E04E670151E48AEFD59C2F82CF73E360" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>tyl-20191231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" 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">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple" />
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:to="lab_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:type="arc" />
    <link:label id="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B_terseLabel_en-US" xlink:label="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B_label_en-US" xlink:label="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B_documentation_en-US" xlink:label="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accounting policies.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesTable" xlink:label="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="lab_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="arc" />
    <link:label id="lab_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:to="lab_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="arc" />
    <link:label id="lab_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:to="lab_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="arc" />
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F_terseLabel_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SaaS arrangements services</link:label>
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F_label_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subscription And Circulation - SaaS Arrangements Services [Member]</link:label>
    <link:label id="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F_documentation_en-US" xlink:label="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Subscription And Circulation - SaaS Arrangements Services [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:to="lab_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="arc" />
    <link:label id="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE_terseLabel_en-US" xlink:label="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Appraisal services</link:label>
    <link:label id="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE_label_en-US" xlink:label="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Appraisal Services [Member]</link:label>
    <link:label id="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE_documentation_en-US" xlink:label="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Appraisal Services [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:to="lab_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Billing Status, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E_label_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Billing Status, Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:to="lab_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Receivables Billing Status [Domain]</link:label>
    <link:label id="lab_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03_label_en-US" xlink:label="lab_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivables Billing Status [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:to="lab_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B_terseLabel_en-US" xlink:label="lab_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unbilled Revenues</link:label>
    <link:label id="lab_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B_label_en-US" xlink:label="lab_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unbilled Revenues [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledRevenuesMember" xlink:label="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:to="lab_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Receivable Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914_label_en-US" xlink:label="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivable Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:to="lab_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Receivable [Domain]</link:label>
    <link:label id="lab_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7_label_en-US" xlink:label="lab_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivable [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivableTypeDomain" xlink:label="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:to="lab_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="arc" />
    <link:label id="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10_terseLabel_en-US" xlink:label="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retention Receivable</link:label>
    <link:label id="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10_label_en-US" xlink:label="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retention Receivable [Member]</link:label>
    <link:label id="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10_documentation_en-US" xlink:label="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Retention Receivable [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RetentionReceivableMember" xlink:label="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:to="lab_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="arc" />
    <link:label id="lab_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:to="lab_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Option Plan</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:to="lab_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="arc" />
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs)</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="arc" />
    <link:label id="lab_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A_terseLabel_en-US" xlink:label="lab_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A_label_en-US" xlink:label="lab_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:to="lab_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="arc" />
    <link:label id="lab_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21_verboseLabel_en-US" xlink:label="lab_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21_label_en-US" xlink:label="lab_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:to="lab_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="arc" />
    <link:label id="lab_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0_terseLabel_en-US" xlink:label="lab_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0_label_en-US" xlink:label="lab_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:to="lab_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="arc" />
    <link:label id="lab_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F_terseLabel_en-US" xlink:label="lab_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F_label_en-US" xlink:label="lab_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:to="lab_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:to="lab_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:to="lab_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Convertible Preferred Stock</link:label>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058_label_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Convertible Preferred Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:to="lab_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="arc" />
    <link:label id="lab_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D_terseLabel_en-US" xlink:label="lab_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Legal Entity</link:label>
    <link:label id="lab_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D_label_en-US" xlink:label="lab_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:to="lab_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="arc" />
    <link:label id="lab_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B_terseLabel_en-US" xlink:label="lab_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity</link:label>
    <link:label id="lab_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B_label_en-US" xlink:label="lab_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:to="lab_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="arc" />
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996_terseLabel_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Record Holdings Pty Limited</link:label>
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996_label_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Record Holdings Pty Limited [Member]</link:label>
    <link:label id="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996_documentation_en-US" xlink:label="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Record Holdings Pty Limited.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecordHoldingsPtyLimitedMember" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:to="lab_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="arc" />
    <link:label id="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048_terseLabel_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Line Items]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048_label_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Line Items]</link:label>
    <link:label id="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048_documentation_en-US" xlink:label="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accounting policies.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesLineItems" xlink:label="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="lab_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill impairment</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:to="lab_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="arc" />
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37_terseLabel_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of wholly-owned subsidiaries</link:label>
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37_label_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number Of Wholly Owned Subsidiaries</link:label>
    <link:label id="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37_documentation_en-US" xlink:label="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number Of Wholly Owned Subsidiaries</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:to="lab_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="arc" />
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Typical contract term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Typical Contract Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Typical Contract Term</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:to="lab_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="arc" />
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Contract Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Contract Term</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:to="lab_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="arc" />
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Progress billing retention percentage</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Percentage Withheld From Progress Billing</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Percentage Withheld From Progress Billing</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:to="lab_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, net</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:to="lab_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="arc" />
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13_terseLabel_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13_label_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Payment Term</link:label>
    <link:label id="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13_documentation_en-US" xlink:label="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revenue From Contract With Customer, Payment Term</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:to="lab_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="arc" />
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B_terseLabel_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales commissions amortization period</link:label>
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B_label_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales Commissions Amortization Period</link:label>
    <link:label id="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B_documentation_en-US" xlink:label="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sales Commissions Amortization Period</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionsAmortizationPeriod" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:to="lab_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="arc" />
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8_terseLabel_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales commission, renewal period</link:label>
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8_label_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales Commission, Renewal Period</link:label>
    <link:label id="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8_documentation_en-US" xlink:label="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sales Commission, Renewal Period</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionRenewalPeriod" xlink:label="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:to="lab_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and development expense</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Software (Excluding Acquired in Process Cost)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual term</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="arc" />
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Impairments of intangible assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment of Intangible Assets (Excluding Goodwill)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Impairments of long-lived assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment of Long-Lived Assets Held-for-use</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:to="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="arc" />
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190_terseLabel_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized post acquisition software development costs</link:label>
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190_label_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Post Acquisition Software Development Costs</link:label>
    <link:label id="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190_documentation_en-US" xlink:label="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Capitalized Post Acquisition Software Development Costs</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:to="lab_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="arc" />
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25_terseLabel_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining estimated economic life</link:label>
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25_label_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Remaining Estimated Economic Life</link:label>
    <link:label id="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25_documentation_en-US" xlink:label="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Remaining Estimated Economic Life</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RemainingEstimatedEconomicLife" xlink:label="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:to="lab_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of software development costs</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase of held to maturity securities</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Held-to-maturity Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:to="lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost method investment</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities, FV-NI and without Readily Determinable Fair Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:to="lab_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="arc" />
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4_terseLabel_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment percentage</link:label>
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4_label_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost Method Investment Ownership Percentage</link:label>
    <link:label id="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4_documentation_en-US" xlink:label="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cost method investment ownership percentage.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostMethodInvestmentOwnershipPercentage" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:to="lab_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost-method investment impairment</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities without Readily Determinable Fair Value, Impairment Loss, Annual Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:to="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="arc" />
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:to="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Quarterly Financial Information</link:label>
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584_label_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:to="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:to="lab_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:to="lab_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term lease cost</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="loc_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:to="lab_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:type="arc" />
    <link:label id="lab_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable lease cost</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableLeaseCost" xlink:label="loc_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:to="lab_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021_label_en-US" xlink:label="lab_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:to="lab_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued wages, bonuses and commissions</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Operating Leased Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B_label_en-US" xlink:label="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Operating Leased Assets [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:to="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Leased Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD_label_en-US" xlink:label="lab_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leased Assets [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasedAssetsLineItems" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="lab_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease term</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Term of Contract</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:to="lab_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease renewal term (up to)</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:to="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease, cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:to="lab_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessor, operating lease renewal term</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:to="lab_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812_verboseLabel_en-US" xlink:label="lab_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Rental income</link:label>
    <link:label id="lab_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812_label_en-US" xlink:label="lab_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rental Income, Nonoperating</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RentalIncomeNonoperating" xlink:label="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:to="lab_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16_netLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">DEFERRED COMMISSIONS</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:type="arc" />
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">COMMITMENTS AND CONTINGENCIES</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:to="lab_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEGMENT AND RELATED INFORMATION</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of New Accounting Pronouncements and Changes in Accounting Principles</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of New Accounting Pronouncements and Changes in Accounting Principles [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:to="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:to="lab_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SUBSEQUENT EVENTS</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:to="lab_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Property Plant And Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property Plant And Equipment By Type</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property Plant And Equipment Type</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="arc" />
    <link:label id="lab_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145_terseLabel_en-US" xlink:label="lab_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Land</link:label>
    <link:label id="lab_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145_label_en-US" xlink:label="lab_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Land [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandMember" xlink:label="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:to="lab_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="arc" />
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7_terseLabel_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Building and leasehold improvements</link:label>
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7_label_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Building And Leasehold Improvements [Member]</link:label>
    <link:label id="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7_documentation_en-US" xlink:label="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Building and leasehold improvements.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:to="lab_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="arc" />
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29_terseLabel_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Computer equipment and purchased software</link:label>
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29_label_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Computer Equipment And Purchased Software [Member]</link:label>
    <link:label id="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29_documentation_en-US" xlink:label="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Computer equipment and purchased software.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:to="lab_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="arc" />
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Furniture and fixtures</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:to="lab_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="arc" />
    <link:label id="lab_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B_terseLabel_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Transportation equipment</link:label>
    <link:label id="lab_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B_label_en-US" xlink:label="lab_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Transportation Equipment [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransportationEquipmentMember" xlink:label="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:to="lab_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, gross</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0_negatedLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accumulated depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, Useful lives</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation Of Operating Profit Loss From Segments To Consolidated [Table]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:to="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="arc" />
    <link:label id="lab_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:to="lab_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="arc" />
    <link:label id="lab_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:to="lab_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="arc" />
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163_terseLabel_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Segments And Corporate Non Segment</link:label>
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163_label_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Segments And Corporate Non Segment [Member]</link:label>
    <link:label id="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163_documentation_en-US" xlink:label="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Operating Segments And Corporate Non Segment [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:to="lab_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="arc" />
    <link:label id="lab_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B_terseLabel_en-US" xlink:label="lab_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reconciling Items</link:label>
    <link:label id="lab_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B_label_en-US" xlink:label="lab_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reconciling Items [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaterialReconcilingItemsMember" xlink:label="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:to="lab_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34_label_en-US" xlink:label="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="lab_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total segment operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:to="lab_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3_negatedLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of acquired software</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost, Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD_negatedLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of customer and trade name intangibles</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other income (expense), net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining performance obligations</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, remaining performance obligation, percentage</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected timing of satisfaction period</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:to="lab_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:to="lab_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="arc" />
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852_terseLabel_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852_label_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State and Local Jurisdiction [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:to="lab_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="lab_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:to="lab_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax credit carryforwards</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:to="lab_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase of liability for an uncertain tax position</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Period Increase (Decrease)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income taxes, net of refunds</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:to="lab_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:type="arc" />
    <link:label id="lab_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5_label_en-US" xlink:label="lab_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cover page.</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="lab_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:type="arc" />
    <link:label id="lab_dei_DocumentType_5E892BC9156D1C94F3623050716390C1_terseLabel_en-US" xlink:label="lab_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_5E892BC9156D1C94F3623050716390C1_label_en-US" xlink:label="lab_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:to="lab_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:type="arc" />
    <link:label id="lab_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63_terseLabel_en-US" xlink:label="lab_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:label id="lab_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63_label_en-US" xlink:label="lab_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:to="lab_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:type="arc" />
    <link:label id="lab_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:to="lab_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:type="arc" />
    <link:label id="lab_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379_label_en-US" xlink:label="lab_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:to="lab_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:type="arc" />
    <link:label id="lab_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9_label_en-US" xlink:label="lab_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:to="lab_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:type="arc" />
    <link:label id="lab_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16_label_en-US" xlink:label="lab_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:to="lab_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:type="arc" />
    <link:label id="lab_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:to="lab_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:type="arc" />
    <link:label id="lab_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:to="lab_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:to="lab_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:to="lab_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:type="arc" />
    <link:label id="lab_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104_label_en-US" xlink:label="lab_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:to="lab_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:type="arc" />
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:to="lab_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:type="arc" />
    <link:label id="lab_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:to="lab_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:to="lab_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:to="lab_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:to="lab_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:to="lab_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:type="arc" />
    <link:label id="lab_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC_label_en-US" xlink:label="lab_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:to="lab_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:type="arc" />
    <link:label id="lab_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B_label_en-US" xlink:label="lab_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:to="lab_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:type="arc" />
    <link:label id="lab_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA_label_en-US" xlink:label="lab_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:to="lab_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:type="arc" />
    <link:label id="lab_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8_label_en-US" xlink:label="lab_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:to="lab_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:type="arc" />
    <link:label id="lab_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A_label_en-US" xlink:label="lab_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:to="lab_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:type="arc" />
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F_terseLabel_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F_label_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:type="arc" />
    <link:label id="lab_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743_terseLabel_en-US" xlink:label="lab_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:label id="lab_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743_label_en-US" xlink:label="lab_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:to="lab_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:type="arc" />
    <link:label id="lab_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:to="lab_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:type="arc" />
    <link:label id="lab_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:to="lab_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:type="arc" />
    <link:label id="lab_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C_label_en-US" xlink:label="lab_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:to="lab_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:type="arc" />
    <link:label id="lab_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0_label_en-US" xlink:label="lab_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:to="lab_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:type="arc" />
    <link:label id="lab_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:to="lab_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:type="arc" />
    <link:label id="lab_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98_label_en-US" xlink:label="lab_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:to="lab_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:type="arc" />
    <link:label id="lab_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1_terseLabel_en-US" xlink:label="lab_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:label id="lab_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1_label_en-US" xlink:label="lab_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:to="lab_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:type="arc" />
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:to="lab_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:type="arc" />
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED_terseLabel_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Documents Incorporated by Reference</link:label>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED_label_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:to="lab_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Segment Reporting Information By Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="arc" />
    <link:label id="lab_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4_terseLabel_en-US" xlink:label="lab_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Software licenses and royalties</link:label>
    <link:label id="lab_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4_label_en-US" xlink:label="lab_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">License [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LicenseMember" xlink:label="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:to="lab_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6_terseLabel_en-US" xlink:label="lab_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subscriptions</link:label>
    <link:label id="lab_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6_label_en-US" xlink:label="lab_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subscription and Circulation [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:to="lab_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="arc" />
    <link:label id="lab_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD_terseLabel_en-US" xlink:label="lab_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Software services</link:label>
    <link:label id="lab_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD_label_en-US" xlink:label="lab_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Technology Service [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:to="lab_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="arc" />
    <link:label id="lab_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97_terseLabel_en-US" xlink:label="lab_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maintenance</link:label>
    <link:label id="lab_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97_label_en-US" xlink:label="lab_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maintenance [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:to="lab_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="arc" />
    <link:label id="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217_verboseLabel_en-US" xlink:label="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Hardware and other</link:label>
    <link:label id="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217_label_en-US" xlink:label="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hardware and Other [Member]</link:label>
    <link:label id="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217_documentation_en-US" xlink:label="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Hardware and Other [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:to="lab_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="arc" />
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB_terseLabel_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intercompany</link:label>
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB_label_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intersegment Eliminations [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:to="lab_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:to="lab_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="arc" />
    <link:label id="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB_terseLabel_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate and Elimination</link:label>
    <link:label id="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB_label_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate And Eliminations [Member]</link:label>
    <link:label id="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB_documentation_en-US" xlink:label="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Corporate And Eliminations [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CorporateAndEliminationsMember" xlink:label="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:to="lab_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="arc" />
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF_label_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate, Non-Segment [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:to="lab_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8_verboseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290_verboseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290_label_en-US" xlink:label="lab_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:to="lab_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="arc" />
    <link:label id="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708_terseLabel_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Enterprise Software</link:label>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708_label_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Enterprise Software [Member]</link:label>
    <link:label id="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708_documentation_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Enterprise software.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:to="lab_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="arc" />
    <link:label id="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD_terseLabel_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Appraisal and Tax</link:label>
    <link:label id="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD_label_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Appraisal And Tax [Member]</link:label>
    <link:label id="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD_documentation_en-US" xlink:label="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Appraisal and tax.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:to="lab_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total revenues</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE_verboseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization expense</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="arc" />
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683_terseLabel_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital expenditures</link:label>
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683_label_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Information Capital Expenditures</link:label>
    <link:label id="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683_documentation_en-US" xlink:label="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Segment reporting information, capital expenditures.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SegmentReportingInformationCapitalExpenditures" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:to="lab_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="arc" />
    <link:label id="lab_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7_terseLabel_en-US" xlink:label="lab_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7_label_en-US" xlink:label="lab_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:to="lab_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LEASES</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LEASES</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Leases [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:label="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:to="lab_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Provision (Benefit) on Income from Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5_label_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Expense Rate</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9_terseLabel_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsidiary Sale Of Stock</link:label>
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9_label_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sale of Stock [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:to="lab_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="arc" />
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB_terseLabel_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sale Of Stock Name Of Transaction</link:label>
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB_label_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sale of Stock [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:to="lab_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Stock Purchase Plan</link:label>
    <link:label id="lab_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE_label_en-US" xlink:label="lab_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:to="lab_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of shares available for grant</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares reserved for future issuance</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unvested options to purchase (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="arc" />
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average grant date value (in dollars per share)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Nonvested Weighted Average Exercise Price</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation arrangement by share based payment award options nonvested weighted average exercise price.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:to="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total unrecognized compensation cost</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average amortization period</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Percentage of annual compensation participants may contribute</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase price as a percentage of closing price on the last day of the quarter for ESPP transactions</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Weighted Average Assumptions Used for Options Granted</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summarizes Restricted Stock Unit and Performance Share Activity</link:label>
    <link:label id="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB_label_en-US" xlink:label="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:to="lab_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Option Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Share-Based Compensation Expense Related to Share-Based Awards</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost [Table]</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostTable" xlink:label="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:to="lab_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost [Line Items]</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostLineItems" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:to="lab_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred commissions</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:to="lab_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred commissions amortization</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:to="lab_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SHARE-BASED COMPENSATION</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Federal income tax expense at statutory rate</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State income tax, net of federal income tax benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479_negatedLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Domestic production activities deduction</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:to="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Excess tax benefits related to stock option exercises</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-based Payment Arrangement, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:type="arc" />
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98_terseLabel_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Act adjustments</link:label>
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98_label_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</link:label>
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98_documentation_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:to="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Tax credits</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-deductible business expenses</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other, net</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income tax expense benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2019</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments Due, Next Twelve Months</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Two Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Three Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Four Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Five Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due Thereafter</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments Due</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Finite Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite Lived Intangible Assets Major Class Name</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="arc" />
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer related intangibles</link:label>
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873_label_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer-Related Intangible Assets [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:to="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="arc" />
    <link:label id="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7_terseLabel_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquired software</link:label>
    <link:label id="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7_label_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software Acquired [Member]</link:label>
    <link:label id="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7_documentation_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Software acquired.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:to="lab_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224_terseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade names</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224_label_en-US" xlink:label="lab_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:to="lab_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="arc" />
    <link:label id="lab_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized software development costs</link:label>
    <link:label id="lab_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415_label_en-US" xlink:label="lab_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software Development [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:to="lab_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Leases acquired</link:label>
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266_label_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leases, Acquired-in-Place [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:to="lab_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquisition intangibles, gross</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A_negatedLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accumulated amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="arc" />
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E_totalLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total other intangibles, net</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="arc" />
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50_terseLabel_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating expenses not currently deductible</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50_label_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets Operating Expenses Not Currently Deductible</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50_documentation_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred tax assets operating expenses not currently deductible.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:to="lab_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock option and other employee benefit plans</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:type="arc" />
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A_terseLabel_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss and credit carryforwards</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A_label_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards</link:label>
    <link:label id="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A_documentation_en-US" xlink:label="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:to="lab_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred income tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:to="lab_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred income tax assets, net of valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:to="lab_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Goodwill and Intangible Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Prepaid Expenses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Tax Deferred Income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Total deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Net deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="loc_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:to="lab_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:type="arc" />
    <link:label id="lab_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16_label_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Postemployment Benefits [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PostemploymentBenefitsAbstract" xlink:label="loc_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:to="lab_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:type="arc" />
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EMPLOYEE BENEFIT PLANS</link:label>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E_label_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation and Employee Benefit Plans, Other than Share-based Compensation [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:to="lab_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ACCRUED LIABILITIES</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="lab_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="lab_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable (less allowance for losses and sales adjustments of $5,738 in 2019 and $4,647 in 2018)</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term investments</link:label>
    <link:label id="lab_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90_label_en-US" xlink:label="lab_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:to="lab_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:type="arc" />
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:to="lab_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax receivable</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Taxes Receivable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:to="lab_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E_label_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:to="lab_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:to="lab_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, long-term</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:to="lab_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other assets:</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Noncurrent [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrentAbstract" xlink:label="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:to="lab_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9_label_en-US" xlink:label="lab_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:to="lab_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:type="arc" />
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other intangibles, net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current investments and other assets</link:label>
    <link:label id="lab_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D_label_en-US" xlink:label="lab_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments and Other Noncurrent Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsAndOtherNoncurrentAssets" xlink:label="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:to="lab_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:type="arc" />
    <link:label id="lab_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950_totalLabel_en-US" xlink:label="lab_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:to="lab_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS' EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:to="lab_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:to="lab_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:type="arc" />
    <link:label id="lab_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revolving line of credit</link:label>
    <link:label id="lab_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE_label_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term Line of Credit, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:to="lab_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue, long-term</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities, long-term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:to="lab_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shareholders' equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="lab_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, $10.00 par value; 1,000,000 shares authorized; none issued</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:to="lab_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, $0.01 par value; 100,000,000 shares authorized; 48,147,969 shares issued in 2019 and 2018</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8_label_en-US" xlink:label="lab_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:to="lab_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss, net of tax</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock, at cost; 8,839,352 and 9,872,505 shares in 2019 and 2018, respectively</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:to="lab_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:to="lab_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Liabilities and Shareholders' equity, Total</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:type="arc" />
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:to="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="lab_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Percentage of employee contribution</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:to="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Percentage of employer contribution</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined contribution plan, cost recognized</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:to="lab_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividend yield (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected life (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected volatility (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Weighted Average Volatility Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Risk-free interest rate (in percentage)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="arc" />
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected forfeiture rate (in percentage)</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Forfeiture Rate</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share-based compensation arrangement by share-based payment award, fair value assumptions, expected forfeiture rate.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:to="lab_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">GOODWILL AND OTHER INTANGIBLE ASSETS</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19_label_en-US" xlink:label="lab_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:to="lab_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Activities in Common Stock</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Stockholders Equity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:to="lab_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:to="lab_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:type="arc" />
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive securities excluded from computation of earnings per share, amount</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50_verboseLabel_en-US" xlink:label="lab_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Leases acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:to="lab_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="arc" />
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B_verboseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Total amortization expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, 2020</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, 2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, 2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, 2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, 2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense, thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PROPERTY AND EQUIPMENT, NET</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">INCOME TAX</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:to="lab_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to cash provided by operations:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:type="arc" />
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:to="lab_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Provision for losses and sales adjustments - accounts receivable</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:type="arc" />
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E_terseLabel_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets - non cash</link:label>
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E_label_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease Right Of Use Assets Non Cash</link:label>
    <link:label id="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E_documentation_en-US" xlink:label="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Operating Lease Right Of Use Assets Non Cash</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:to="lab_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income tax benefit</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities, exclusive of effects of acquired companies:</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Income tax receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Income Taxes Receivable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:to="lab_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:type="arc" />
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8_terseLabel_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8_label_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) In Operating Lease Liabilities</link:label>
    <link:label id="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8_documentation_en-US" xlink:label="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase (Decrease) In Operating Lease Liabilities</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:to="lab_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:to="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Additions to property and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchase of marketable security investments</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Marketable Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:to="lab_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from marketable security investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale and Maturity of Marketable Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:to="lab_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Capitalized software development costs</link:label>
    <link:label id="lab_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6_label_en-US" xlink:label="lab_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for Software</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForSoftware" xlink:label="loc_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:to="lab_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Cost of acquisitions, net of cash acquired</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">(Increase) decrease in other</link:label>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B_label_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:to="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used by investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:type="arc" />
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Decrease in net borrowings on revolving line of credit</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repayments of Lines of Credit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:to="lab_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchase of treasury shares</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from exercise of stock options</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:to="lab_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Contributions from employee stock purchase plan</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Plans</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:to="lab_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided (used) by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase (decrease) in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:to="lab_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ACQUISITIONS</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Stock By Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Stock by Class [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:to="lab_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:to="lab_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:to="lab_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:to="lab_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="arc" />
    <link:label id="lab_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class Of Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E_label_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:to="lab_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of shares authorized to be repurchased, shares</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Number of Shares Authorized to be Repurchased</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:to="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Two</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Three</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Four</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due after Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Less: Interest</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Present value of operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:to="lab_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Segment Revenues and Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of Operating Income from Segments to Consolidated</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:to="lab_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Remainder of Fiscal Year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Two Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Three Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Four Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Five Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Thereafter</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:type="arc" />
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803_totalLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293_terseLabel_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Principles of Consolidation</link:label>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293_label_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:to="lab_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:type="arc" />
    <link:label id="lab_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:to="lab_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and Equipment, Net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and Development Costs</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88_label_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill and Other Intangible Assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Impairment of Long-Lived Assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46_label_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:type="arc" />
    <link:label id="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Costs of Computer Software</link:label>
    <link:label id="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748_label_en-US" xlink:label="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software to be Sold, Leased, or Otherwise Marketed, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:label="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:to="lab_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contingent Purchase Consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:to="lab_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentrations of Credit Risk</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:to="lab_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6_label_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Leases [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:to="lab_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:type="arc" />
    <link:label id="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655_terseLabel_en-US" xlink:label="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Indemnification</link:label>
    <link:label id="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655_label_en-US" xlink:label="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Guarantees, Indemnifications and Warranties Policies [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:label="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:to="lab_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:type="arc" />
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8_terseLabel_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reclassifications</link:label>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8_label_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:to="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recently Adopted Accounting Pronouncements and New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Business Acquisitions By Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:to="lab_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="arc" />
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F_terseLabel_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Courthouse Technologies, Ltd</link:label>
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F_label_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Courthouse Technologies, Ltd [Member]</link:label>
    <link:label id="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F_documentation_en-US" xlink:label="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Courthouse Technologies, Ltd [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CourthouseTechnologiesLtdMember" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:to="lab_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="arc" />
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993_terseLabel_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">MicroPact</link:label>
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993_label_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">MP Holdings Parent, Inc. dba MicroPact [Member]</link:label>
    <link:label id="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993_documentation_en-US" xlink:label="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">MP Holdings Parent, Inc. dba MicroPact [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:to="lab_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="arc" />
    <link:label id="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E_verboseLabel_en-US" xlink:label="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">MyCivic</link:label>
    <link:label id="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E_label_en-US" xlink:label="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Civic LLC [Member]</link:label>
    <link:label id="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E_documentation_en-US" xlink:label="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Civic LLC [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CivicLLCMember" xlink:label="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:to="lab_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="arc" />
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89_terseLabel_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">MicroPact And MyCivic</link:label>
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89_label_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">MicroPact And MyCivic [Member]</link:label>
    <link:label id="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89_documentation_en-US" xlink:label="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">MicroPact And MyCivic [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MicroPactAndMyCivicMember" xlink:label="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:to="lab_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="arc" />
    <link:label id="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01_terseLabel_en-US" xlink:label="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SceneDoc. Inc</link:label>
    <link:label id="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01_label_en-US" xlink:label="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SceneDoc. Inc. [Member]</link:label>
    <link:label id="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01_documentation_en-US" xlink:label="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">SceneDoc. Inc. [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SceneDoc.Inc.Member" xlink:label="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:to="lab_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="arc" />
    <link:label id="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331_terseLabel_en-US" xlink:label="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">TradeMaster Inc.</link:label>
    <link:label id="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331_label_en-US" xlink:label="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">TradeMaster Inc. [Member]</link:label>
    <link:label id="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331_documentation_en-US" xlink:label="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">TradeMaster Inc. [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TradeMasterInc.Member" xlink:label="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:to="lab_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="arc" />
    <link:label id="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428_terseLabel_en-US" xlink:label="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">CaseloadPRO, LP</link:label>
    <link:label id="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428_label_en-US" xlink:label="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">CaseloadPRO, LP [Member]</link:label>
    <link:label id="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428_documentation_en-US" xlink:label="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">CaseloadPRO, LP [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CaseloadPROLPMember" xlink:label="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:to="lab_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="arc" />
    <link:label id="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04_terseLabel_en-US" xlink:label="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Socrata, Inc.</link:label>
    <link:label id="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04_label_en-US" xlink:label="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Socrata, Inc. [Member]</link:label>
    <link:label id="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04_documentation_en-US" xlink:label="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Socrata, Inc. [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SocrataInc.Member" xlink:label="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:to="lab_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="arc" />
    <link:label id="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC_terseLabel_en-US" xlink:label="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sage Data Security, LLC</link:label>
    <link:label id="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC_label_en-US" xlink:label="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sage Data Security, LLC [Member]</link:label>
    <link:label id="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC_documentation_en-US" xlink:label="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sage Data Security, LLC [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SageDataSecurityLLCMember" xlink:label="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:to="lab_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="arc" />
    <link:label id="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433_terseLabel_en-US" xlink:label="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Radio 1033, LLC</link:label>
    <link:label id="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433_label_en-US" xlink:label="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Radio 1033, LLC [Member]</link:label>
    <link:label id="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433_documentation_en-US" xlink:label="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Radio 1033, LLC [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Radio1033LLCMember" xlink:label="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:to="lab_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="arc" />
    <link:label id="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F_terseLabel_en-US" xlink:label="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Digital Health Department, Inc.</link:label>
    <link:label id="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F_label_en-US" xlink:label="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Digital Health Department, Inc. [Member]</link:label>
    <link:label id="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F_documentation_en-US" xlink:label="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Digital Health Department, Inc. [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DigitalHealthDepartmentInc.Member" xlink:label="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:to="lab_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="arc" />
    <link:label id="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1_terseLabel_en-US" xlink:label="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Modria.com</link:label>
    <link:label id="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1_label_en-US" xlink:label="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Modria.com [Member]</link:label>
    <link:label id="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1_documentation_en-US" xlink:label="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Modria.com [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Modria.comMember" xlink:label="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:to="lab_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total purchase price to acquire business</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash to acquire business</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="arc" />
    <link:label id="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA_terseLabel_en-US" xlink:label="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued purchase price</link:label>
    <link:label id="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA_label_en-US" xlink:label="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Acquisition Purchase Price</link:label>
    <link:label id="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA_documentation_en-US" xlink:label="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accrued acquisition purchase price.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccruedAcquisitionPurchasePrice" xlink:label="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:to="lab_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net cash acquired</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="arc" />
    <link:label id="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B_terseLabel_en-US" xlink:label="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tangible assets acquired</link:label>
    <link:label id="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B_label_en-US" xlink:label="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</link:label>
    <link:label id="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B_documentation_en-US" xlink:label="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" xlink:label="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:to="lab_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities assumed</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Identifiable intangible assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average useful life (in years)</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398_negatedLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Deferred tax liabilities, net</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business acquisition consideration adjustment</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:to="lab_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss of acquiree, actual</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:to="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue of acquiree, actual</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:to="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Acquisition related fees</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Acquisition Related Costs</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Acquired Finite Lived Intangible Asset By Major Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="arc" />
    <link:label id="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6_verboseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Customer related intangibles</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:to="lab_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="arc" />
    <link:label id="lab_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E_verboseLabel_en-US" xlink:label="lab_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Acquired software</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:to="lab_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="arc" />
    <link:label id="lab_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297_verboseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Trade names</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:to="lab_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="arc" />
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquired Finite Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortizable intangibles, Gross carrying amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6_verboseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortizable intangibles, Weighted Average Amortization Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortizable intangibles, Accumulated Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:to="lab_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementTable_88226433A6F78C548C091107C762A189_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_88226433A6F78C548C091107C762A189_label_en-US" xlink:label="lab_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:to="lab_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="arc" />
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48_terseLabel_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Software licenses and royalties</link:label>
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48_label_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software Licenses and Royalties [Member]</link:label>
    <link:label id="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48_documentation_en-US" xlink:label="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Software Licenses and Royalties [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareLicensesandRoyaltiesMember" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:to="lab_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="arc" />
    <link:label id="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508_terseLabel_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquired software</link:label>
    <link:label id="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508_label_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Acquired Software [Member]</link:label>
    <link:label id="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508_documentation_en-US" xlink:label="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Acquired Software [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AcquiredSoftwareMember" xlink:label="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:to="lab_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="arc" />
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA_terseLabel_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Software services, maintenance and subscriptions</link:label>
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA_label_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software Services, Maintenance and Subscriptions [Member]</link:label>
    <link:label id="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA_documentation_en-US" xlink:label="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Software Services, Maintenance and Subscriptions [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:to="lab_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="arc" />
    <link:label id="lab_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D_terseLabel_en-US" xlink:label="lab_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hardware and other</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:to="lab_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893_label_en-US" xlink:label="lab_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="lab_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenues:</link:label>
    <link:label id="lab_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56_label_en-US" xlink:label="lab_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenues [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:to="lab_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenues:</link:label>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B_label_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Revenue [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfRevenueAbstract" xlink:label="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:to="lab_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36_label_en-US" xlink:label="lab_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:to="lab_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="arc" />
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF_terseLabel_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of customer and trade name intangibles</link:label>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF_label_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Customer and Trade Names Intangible Assets</link:label>
    <link:label id="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF_documentation_en-US" xlink:label="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amortization of Customer and Trade Names Intangible Assets</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:to="lab_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:to="lab_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other income, net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Income tax provision (benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:to="lab_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings per common share:</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:to="lab_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:to="lab_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:to="lab_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of the allocation of the purchase price as of the acquisition date</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of pro forma information</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Information [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="arc" />
    <link:label id="lab_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:to="lab_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="arc" />
    <link:label id="lab_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:to="lab_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="arc" />
    <link:label id="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF_terseLabel_en-US" xlink:label="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Latham, New York</link:label>
    <link:label id="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF_label_en-US" xlink:label="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Latham, New York [Member]</link:label>
    <link:label id="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF_documentation_en-US" xlink:label="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Latham, New York [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_LathamNewYorkMember" xlink:label="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:to="lab_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="arc" />
    <link:label id="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C_terseLabel_en-US" xlink:label="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Yarmouth, Maine</link:label>
    <link:label id="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C_label_en-US" xlink:label="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Yarmouth, Maine [Member]</link:label>
    <link:label id="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C_documentation_en-US" xlink:label="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Yarmouth, Maine [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_YarmouthMaineMember" xlink:label="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:to="lab_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="arc" />
    <link:label id="lab_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation expense</link:label>
    <link:label id="lab_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652_label_en-US" xlink:label="lab_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:to="lab_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment for construction to expand building</link:label>
    <link:label id="lab_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3_label_en-US" xlink:label="lab_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for Capital Improvements</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForCapitalImprovements" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:to="lab_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment to acquire building</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Buildings</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBuildings" xlink:label="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:to="lab_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SHAREHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212_terseLabel_en-US" xlink:label="lab_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hardware and other</link:label>
    <link:label id="lab_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212_label_en-US" xlink:label="lab_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:to="lab_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="arc" />
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="arc" />
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Products and services transferred at a point in time</link:label>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C_label_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Transferred at Point in Time [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:to="lab_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="arc" />
    <link:label id="lab_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Products and services transferred over time</link:label>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190_label_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Transferred over Time [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredOverTimeMember" xlink:label="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:to="lab_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="arc" />
    <link:label id="lab_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE_label_en-US" xlink:label="lab_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:to="lab_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="arc" />
    <link:label id="lab_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:to="lab_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="arc" />
    <link:label id="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7_terseLabel_en-US" xlink:label="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recurring revenues</link:label>
    <link:label id="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7_label_en-US" xlink:label="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Recurring Revenue [Member]</link:label>
    <link:label id="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7_documentation_en-US" xlink:label="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Recurring Revenue [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecurringRevenueMember" xlink:label="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:to="lab_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="arc" />
    <link:label id="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0_terseLabel_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-recurring revenues</link:label>
    <link:label id="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0_label_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-recurring Revenue [Member]</link:label>
    <link:label id="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0_documentation_en-US" xlink:label="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Non-recurring Revenue [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NonrecurringRevenueMember" xlink:label="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:to="lab_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="arc" />
    <link:label id="lab_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4_verboseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="lab_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other noncurrent assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other noncurrent liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Deferred Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax liabilities, net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Assets:</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:to="lab_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:to="lab_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating leases, short-term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating leases, long-term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total lease liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:to="lab_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0_netLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Revenues</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D_terseLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:to="lab_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Earnings per diluted share (USD per share)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:to="lab_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares used in computing diluted earnings per share</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:type="arc" />
    <link:label id="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF_negatedLabel_en-US" xlink:label="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Tax Act tax benefit</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:to="lab_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:type="arc" />
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77_terseLabel_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">QUARTERLY FINANCIAL INFORMATION (unaudited)</link:label>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:to="lab_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Accrued Liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:type="arc" />
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5_terseLabel_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Numerator for basic and diluted earnings per share:</link:label>
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5_label_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Numerator of Basic and Diluted Earnings Per Share [Abstract]</link:label>
    <link:label id="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5_documentation_en-US" xlink:label="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Numerator of Basic and Diluted Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:label="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:to="lab_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:type="arc" />
    <link:label id="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336_terseLabel_en-US" xlink:label="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Denominator:</link:label>
    <link:label id="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336_label_en-US" xlink:label="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Denominator [Abstract]</link:label>
    <link:label id="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336_documentation_en-US" xlink:label="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Denominator [Abstract]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DenominatorAbstract" xlink:label="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:to="lab_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average basic common shares outstanding</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:type="arc" />
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F_terseLabel_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assumed conversion of dilutive securities:</link:label>
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F_label_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assumed Conversion of Dilutive Securities [Abstract]</link:label>
    <link:label id="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F_documentation_en-US" xlink:label="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Assumed Conversion of Dilutive Securities [Abstract]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:label="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:to="lab_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968_terseLabel_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock options (in shares)</link:label>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968_label_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Denominator for diluted earnings per share - Adjusted weighted-average shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic and Diluted [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:to="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Table]</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:to="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F_label_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="arc" />
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0_label_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:to="lab_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-02</link:label>
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C_label_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-02 [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:to="lab_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Line Items]</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements or Change in Accounting Principle [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="lab_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E_negatedLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2_negatedLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities, long-term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259_label_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Federal Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C_label_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87_totalLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Current income tax expense benefit</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenues</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Net Income (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic earnings per share (usd per share)</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted earnings per share (usd per share)</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Changes in Carrying Amount of Goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Other Intangible Assets and Related Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Allocation of Acquisition Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Estimated Annual Amortization Expense</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average grant-date fair value of stock options granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total intrinsic value of stock options exercised</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:to="lab_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:type="arc" />
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F_terseLabel_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of leases assets and liabilities</link:label>
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F_label_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Leases Assets And Liabilities [Table Text Block]</link:label>
    <link:label id="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F_documentation_en-US" xlink:label="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule Of Leases Assets And Liabilities [Table Text Block]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:to="lab_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:type="arc" />
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6_terseLabel_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of supplemental information related to leases</link:label>
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6_label_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Supplemental Information Related To Leases [Table Text Block]</link:label>
    <link:label id="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6_documentation_en-US" xlink:label="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule Of Supplemental Information Related To Leases [Table Text Block]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:label="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:to="lab_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of operating lease maturity</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of future minimum lease commitments related to lease agreements under Topic 840</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:to="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of future minimum operating rental income</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Lease Income [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:label="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:to="lab_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:type="arc" />
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543_terseLabel_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of material legal proceedings pending</link:label>
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543_label_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number Of Legal Proceedings That Have Material Effect</link:label>
    <link:label id="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543_documentation_en-US" xlink:label="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of legal proceedings that have material effect.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:label="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:to="lab_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:type="arc" />
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4_terseLabel_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted stock unit and performance stock unit</link:label>
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4_label_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock Unit and Performance Stock Unit [Member]</link:label>
    <link:label id="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4_documentation_en-US" xlink:label="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Restricted Stock Unit and Performance Stock Unit [Member]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:to="lab_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Vested, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited, shares</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value per Share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Intrinsic Value, Amount Per Share [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instrument Other than Option, Nonvested, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited (dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Intrinsic Value, Amount Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance (dollar per share)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EARNINGS PER SHARE</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:to="lab_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:type="arc" />
    <link:label id="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18_terseLabel_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of business units</link:label>
    <link:label id="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18_label_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number Of Business Units</link:label>
    <link:label id="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18_documentation_en-US" xlink:label="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of business units.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfBusinessUnits" xlink:label="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:to="lab_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="arc" />
    <link:label id="lab_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of reportable segment</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:to="lab_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating cash outflows from operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:to="lab_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:type="arc" />
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B_terseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating leases</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average remaining lease term (years)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Employee Service Share Based Compensation Allocation Of Recognized Period Costs [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:to="lab_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:to="lab_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="arc" />
    <link:label id="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B_terseLabel_en-US" xlink:label="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of software services, maintenance and subscriptions</link:label>
    <link:label id="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B_label_en-US" xlink:label="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost Of Software Services Maintenance And Subscriptions [Member]</link:label>
    <link:label id="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B_documentation_en-US" xlink:label="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cost of software services maintenance and subscriptions.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" xlink:label="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:to="lab_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95_negatedLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Excess tax benefit</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense, Tax Benefit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB_totalLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net decrease (increase) in net income</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense, after Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of disaggregation of revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement Equity Components</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:to="lab_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Component</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="lab_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67_label_en-US" xlink:label="lab_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:to="lab_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:to="lab_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E_label_en-US" xlink:label="lab_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:to="lab_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:to="lab_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance, shares</link:label>
    <link:label id="lab_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D_label_en-US" xlink:label="lab_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:to="lab_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="arc" />
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8_terseLabel_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings adjustment-adoption of Topic 842 Leases, net of taxes</link:label>
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8_label_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cumulative Effect of New Accounting Principle in Period of Adoption</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:to="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of shares pursuant to stock compensation plan</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of shares pursuant to stock compensation plan, shares</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Employee taxes paid for withheld shares for taxes upon equity award</link:label>
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA_label_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Decrease for Tax Withholding Obligation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:to="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Employee taxes paid for withheld shares for taxes upon equity award, shares</link:label>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E_label_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">APIC, Share-based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of shares pursuant to employee stock purchase plan</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Purchase Plan</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of shares pursuant to employee stock purchase plan, shares</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock purchases</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock purchases, shares</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Shares, Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:to="lab_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:to="lab_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Shares</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding Beginning Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding Ending Balance (in shares)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding Beginning Balance (in dollar per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercised (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding Ending Balance (in dollars per share)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Remaining Contractual Life (Years), Outstanding</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Remaining Contractual Life (Years), Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value, Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value, Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:to="lab_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">REVOLVING LINE OF CREDIT</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:to="lab_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stock option exercises, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Purchases of common stock, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Employee stock plan purchases, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:type="arc" />
    <link:label id="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A_terseLabel_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted stock units vested, net of withheld shares upon award settlement, Shares</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A_label_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other than Options, Vested In Period, Net Of Withheld Shares Upon Award Settlement</link:label>
    <link:label id="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A_documentation_en-US" xlink:label="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other than Options, Vested In Period, Net Of Withheld Shares Upon Award Settlement</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:label="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:to="lab_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Purchases of common stock</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Employee stock plan purchases</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:type="arc" />
    <link:label id="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815_terseLabel_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted stock units vested, net of withheld shares upon award settlement</link:label>
    <link:label id="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815_label_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Units Vested, Net Of Withheld Shares Upon Award Settlement</link:label>
    <link:label id="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815_documentation_en-US" xlink:label="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Units Vested, Net Of Withheld Shares Upon Award Settlement</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:label="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:to="lab_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3_verboseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, shares authorized</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, shares issued</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:to="lab_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:to="lab_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares issued</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:to="lab_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:type="arc" />
    <link:label id="lab_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury stock, shares</link:label>
    <link:label id="lab_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47_label_en-US" xlink:label="lab_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:to="lab_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">DISAGGREGATION OF REVENUE</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Property and Equipment, Net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule Of Goodwill [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="arc" />
    <link:label id="lab_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180_verboseLabel_en-US" xlink:label="lab_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Enterprise Software</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:to="lab_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="arc" />
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704_terseLabel_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other acquisitions</link:label>
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704_label_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Series of Individually Immaterial Business Acquisitions [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:to="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:label id="lab_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC_label_en-US" xlink:label="lab_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:to="lab_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillRollForward" xlink:label="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="lab_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Goodwill Beginning Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:to="lab_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Goodwill acquired</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Goodwill Ending Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:to="lab_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Computation of Basic Earnings and Diluted Earnings Per Share Data</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Asset and Liability [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0_periodStartLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of year</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B_netLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Provisions for losses and sales adjustments - accounts receivable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Collection of accounts previously written off</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Recovery</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6_periodEndLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, allowance for losses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:to="lab_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="arc" />
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5_terseLabel_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract With Customer Liability [Roll Forward]</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5_label_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract With Customer Liability [Roll Forward]</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5_documentation_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Contract With Customer Liability [Roll Forward]</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityRollForward" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="lab_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7_periodStartLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:to="lab_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:type="arc" />
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923_terseLabel_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferral of revenue</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923_label_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract With Customer, Liability, Increase From Deferral</link:label>
    <link:label id="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923_documentation_en-US" xlink:label="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Contract With Customer, Liability, Increase From Deferral</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:to="lab_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Recognition of deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A_periodEndLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of year</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:to="lab_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line Of Credit Facility [Table]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="lab_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short Term Debt Type</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:to="lab_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short Term Debt Type</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:to="lab_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="arc" />
    <link:label id="lab_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F_terseLabel_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Letter of Credit</link:label>
    <link:label id="lab_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F_label_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Letter of Credit [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LetterOfCreditMember" xlink:label="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:to="lab_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="arc" />
    <link:label id="lab_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit Facility</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:to="lab_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="arc" />
    <link:label id="lab_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit Facility</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:to="lab_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:to="lab_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument Name</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:to="lab_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="arc" />
    <link:label id="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B_terseLabel_en-US" xlink:label="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit Agreement</link:label>
    <link:label id="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B_label_en-US" xlink:label="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Agreement [Member]</link:label>
    <link:label id="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B_documentation_en-US" xlink:label="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Credit Agreement.</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CreditAgreementMember" xlink:label="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:to="lab_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="arc" />
    <link:label id="lab_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable Rate</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:to="lab_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="arc" />
    <link:label id="lab_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable Rate</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:to="lab_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="arc" />
    <link:label id="lab_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27_terseLabel_en-US" xlink:label="lab_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prime Commercial Lending Rate</link:label>
    <link:label id="lab_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27_label_en-US" xlink:label="lab_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prime Rate [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:to="lab_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="arc" />
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A_terseLabel_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LIBOR Rate</link:label>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A_label_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line Of Credit Facility [Line Items]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="lab_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revolving credit facility, maximum borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of credit facility interest rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt instrument, interest rate, stated percentage</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt instrument, interest rate, effective percentage</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Effective Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:to="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="arc" />
    <link:label id="lab_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Outstanding borrowings</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:to="lab_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of credit facility, unused borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="arc" />
    <link:label id="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3_terseLabel_en-US" xlink:label="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of outstanding letter of credit</link:label>
    <link:label id="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3_label_en-US" xlink:label="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Outstanding Letter of Credit</link:label>
    <link:label id="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3_documentation_en-US" xlink:label="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of Outstanding Letter of Credit</link:label>
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberofOutstandingLetterofCredit" xlink:label="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:to="lab_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="arc" />
    <link:label id="lab_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest paid</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:to="lab_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="arc" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>tyl-20191231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!-- -->
<link:linkbase xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" 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">
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilities" xlink:href="tyl-20191231.xsd#AccruedLiabilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:href="tyl-20191231.xsd#AccruedLiabilitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Acquisitions" xlink:href="tyl-20191231.xsd#Acquisitions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:href="tyl-20191231.xsd#AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:href="tyl-20191231.xsd#AcquisitionsNarrativeDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:href="tyl-20191231.xsd#AcquisitionsProFormaInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/AcquisitionsTables" xlink:href="tyl-20191231.xsd#AcquisitionsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:href="tyl-20191231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="tyl-20191231.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:href="tyl-20191231.xsd#ConsolidatedStatementsOfShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Cover" xlink:href="tyl-20191231.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissions" xlink:href="tyl-20191231.xsd#DeferredCommissions" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:href="tyl-20191231.xsd#DeferredCommissionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligations" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:href="tyl-20191231.xsd#DeferredRevenueAndPerformanceObligationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenue" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:href="tyl-20191231.xsd#DisaggregationOfRevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShare" xlink:href="tyl-20191231.xsd#EarningsPerShare" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:href="tyl-20191231.xsd#EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EarningsPerShareTables" xlink:href="tyl-20191231.xsd#EarningsPerShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlans" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="tyl-20191231.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTax" xlink:href="tyl-20191231.xsd#IncomeTax" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#IncomeTaxAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:href="tyl-20191231.xsd#IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:href="tyl-20191231.xsd#IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:href="tyl-20191231.xsd#IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/IncomeTaxTables" xlink:href="tyl-20191231.xsd#IncomeTaxTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/Leases" xlink:href="tyl-20191231.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#LeasesAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeaseCostDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:href="tyl-20191231.xsd#LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/LeasesTables" xlink:href="tyl-20191231.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNet" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:href="tyl-20191231.xsd#PropertyAndEquipmentNetTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:href="tyl-20191231.xsd#QuarterlyFinancialInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:href="tyl-20191231.xsd#RevolvingLineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:href="tyl-20191231.xsd#SegmentAndRelatedInformationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensation" xlink:href="tyl-20191231.xsd#ShareBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:href="tyl-20191231.xsd#ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationStockOptionActivityDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:href="tyl-20191231.xsd#ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:href="tyl-20191231.xsd#ShareBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquity" xlink:href="tyl-20191231.xsd#ShareholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquityAdditionalInformationDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:href="tyl-20191231.xsd#ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:href="tyl-20191231.xsd#ShareholdersEquityTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SubsequentEvents" xlink:href="tyl-20191231.xsd#SubsequentEvents" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="tyl-20191231.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple" />
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilities" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_AEBB1C09B328AA47E7962FE953D7B25C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_AEBB1C09B328AA47E7962FE953D7B25C" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_AE796D4D0C30E6A09CD92FE953D77376" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_DE28D4989920A82B5BAF2FE953C75EFA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_54A4C920043CFD0F5B962FE953C76BEA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_875A1480F2D3D4ED0B932FE953C7E1CF" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_38BB9C3054CF9A01F7162FE953C71919" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AccruedLiabilitiesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_B3923431086A659878712FE953C7D682" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_B3923431086A659878712FE953C7D682" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_7C09A62A6448088FD5352FE953C7B1E9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/Acquisitions" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_BC3593E8FCF30E24F30E2F82CF5D2717" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_A166F7E9C4C8CA1A3AF72F82CF5E8528" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_7AE7C2ABB2435DADD7FC2F82CF48EB24" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_7AE7C2ABB2435DADD7FC2F82CF48EB24" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1F782A59649996C643DC2F82CF49FBCF" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_E8432EF8B3D0934590CC2F82CF497715" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4406CB87C3939B0EAC632F82CF491085" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_E8432EF8B3D0934590CC2F82CF497715" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5C14074C1B63C31EBD7A2F82CF48A337" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_290261D93203E5BA1A652F82CF4A2BC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_89F9FEEF6D2AAD3BCF142F82CF4AA3EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_D74264457C3FA875392D2F82CF4A9272" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_F3046E7176D81C7F0E392F82CF4A62DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_C42C322E973BC6187A6F2F82CF4AFEED" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_C42C322E973BC6187A6F2F82CF4AFEED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_45D3D8DD60FC26D390A42F82CF4A9F77" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_Goodwill_45D3D8DD60FC26D390A42F82CF4A9F77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_C7648B9DAEC69FB27B4A2F82CF4B6BAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther_216FA2B2D758A624CF1D2F82CF4B30B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_619D6BED704703D545642F82CF4BD8A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_6BCAB701397DF3F4EABC2F82CF4BA11B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_910C388E67C9680EBE0A2F82CF4B3D46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_FB530306449B744D7FBC2F82CF4943EE" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_AECE5A2A34409A0740B52F82CF4B9EB0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AcquisitionsNarrativeDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_AB3B8D9083FECA89F83741190CD4EE58" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_AB3B8D9083FECA89F83741190CD4EE58" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_A22417221FA29C74FA7E41190CD4E621" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CourthouseTechnologiesLtdMember" xlink:label="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CourthouseTechnologiesLtdMember_4A077AA12F2C614FB63141190CD52A3F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_26B4D821A10C095410F941190CD51993" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CivicLLCMember" xlink:label="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CivicLLCMember_5A541F8A4856A38D066741190CD5D30E" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MicroPactAndMyCivicMember" xlink:label="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_MicroPactAndMyCivicMember_AE9D7601485075DD0BEB41190CD6BB89" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SceneDoc.Inc.Member" xlink:label="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SceneDoc.Inc.Member_3963D5E225D830EC06B941190CD6EA01" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TradeMasterInc.Member" xlink:label="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_TradeMasterInc.Member_D361577FCC488370AB9E41190CD6D331" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CaseloadPROLPMember" xlink:label="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_CaseloadPROLPMember_6F0C6ACBF91C1760360241190CD6A428" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SocrataInc.Member" xlink:label="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SocrataInc.Member_E7B405BD9BC49198C9A341190CD67F04" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SageDataSecurityLLCMember" xlink:label="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_SageDataSecurityLLCMember_CD801D56DE45AC62B61C41190CD7AEEC" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Radio1033LLCMember" xlink:label="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_Radio1033LLCMember_26BC3BDECC7BC31D241641190CD7F433" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DigitalHealthDepartmentInc.Member" xlink:label="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_DigitalHealthDepartmentInc.Member_056F502798D39453722E41190CD7C19F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_Modria.comMember" xlink:label="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119A3091CD965BA7C32F41190CD59E44" xlink:to="loc_tyl_Modria.comMember_0B4EF54D1E640D3AE34841190CD7C6E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_0E501D79B44F2BFD96F741190CD47D06" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6D50C9FEF8AC9FBC8F7741190CD78D8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_A4354F7F2101C7B812C141190CD863DA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccruedAcquisitionPurchasePrice" xlink:label="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_tyl_AccruedAcquisitionPurchasePrice_1C564BFE25A6D4A8632241190CD83CDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FE5F24DCEEEEB09FCAA241190CD85D93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_E342226863D0FF767B0C41190CD86A74" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets" xlink:label="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets_38EB19FEF52E0009B5AD41190CD87A3B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_010D5F4EC9BB7AE7280441190CD8BABE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_60EADC41F396EB4A579541190CD9C008" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_Goodwill_60EADC41F396EB4A579541190CD9C008" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6F30D13335226F4BF5DD41190CD9E6B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_848F8147DACF27376A8541190CD9F120" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_46F8A6020E5B5DD3B39841190CD95398" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred" xlink:label="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred_CCC6E4695FEF7040931841190D115AEA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_B6F2200FDBD029E4D0DB41190D115466" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_B233BC18F5CDAEF0A9ED41190D123F2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_9F0D98807220EBE43EFF41190CD78029" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_2F5E8CA66B68BD39BDB641190D125BF6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_52C3D783FC6D3D6169BD2F82CF411E93" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_52C3D783FC6D3D6169BD2F82CF411E93" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1FE2CF231816A423B0062F82CF41B84C" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_6DC1D385186AF558419A2F82CF42A0D6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6A9CEDAC4F901C28D4AB2F82CF423A14" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_6DC1D385186AF558419A2F82CF42A0D6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_331D85BB2D0152D062F72F82CF4118CB" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_78B8337FA6F5FC7F3E422F82CF426AEA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_58C992A322F95ADC3F1A2F82CF4322EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_02DBEF00CC3F6C636D602F82CF43AEFE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_096DB9A6A6ADF6949F2A2F82CF423648" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_79BC188C1B0E2D7524842F82CF433BFC" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/AcquisitionsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_16F596E4BF44D1A2AA752F82CF5B46A1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_16F596E4BF44D1A2AA752F82CF5B46A1" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_8957075497AB1DB4A7272F82CF5B5906" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_16F596E4BF44D1A2AA752F82CF5B46A1" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_40A4BE3854F3295DDFE12F82CF5CAEF5" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingencies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_649F449581C3D3374DBB2FE952CD88C3" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_F18F54F66E16D97754232FE952CD6338" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_C62F321ABA03F0B2433F2FE952CD23E5" xlink:type="locator" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfLegalProceedingsThatHaveMaterialEffect" xlink:label="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_C62F321ABA03F0B2433F2FE952CD23E5" xlink:to="loc_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect_64BC7EE58F671E22138D2FE952CD8543" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:to="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0354B49FC38919DB3A1C5A8257DB9517" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_5E8B1EBB2C569714E2265A8257DCAA5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_ShortTermInvestments_B79C9CDD0002DE75B0C15A8257DC8C90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_F00827D81B4A5A9D7A355A8257DCB688" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_IncomeTaxReceivable_6FAB7D6F40E358D9751C5A8257DCAAB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_OtherAssetsCurrent_C10F4E9C68400937C9B35A8257DC620E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AA05D6653E761390D0035A8257DB7FDB" xlink:to="loc_us-gaap_AssetsCurrent_92E3636F65C6989DC2C45A8257DCF6CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_AccountsReceivableNetNoncurrent_7E1A0A54F0C2364ED3C25A8257DD3D5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_5DA2FDA0C38A7B8B86F15A8257DDC9BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_99532F17A464D0E643535A8257DD19AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrentAbstract" xlink:label="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:to="loc_us-gaap_Goodwill_6F18EE67ACB7355AF17A5A8257DD7DD9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_903F65EA3B8D17E68EAB5A8257DED5BA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsAndOtherNoncurrentAssets" xlink:label="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherAssetsNoncurrentAbstract_F20DB866ECF4DE7287235A8257DDA6E8" xlink:to="loc_us-gaap_InvestmentsAndOtherNoncurrentAssets_24EF6A8B14A6DEA6FC955A8257DE842D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_D5F3B2E38245532536BC5A8257DBFC70" xlink:to="loc_us-gaap_Assets_E6EA6C3D5E4A73413DE25A8257DE3950" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1CC1E3E5F7395A3E5B665A8257DB003A" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="loc_us-gaap_AccountsPayableCurrent_5E55AEEA7840864359FA5A8257DF4523" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_3E52B390251C9CC814E95A8257DFC362" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_8394D8D850087BEF102C5A8257DF69FF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_013108F548D8503EBF8A5A8257DF1BF5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_B1D687981D4AE06ADBA05A8257DEA853" xlink:to="loc_us-gaap_LiabilitiesCurrent_A9C56FA8754DEFA742385A8257DF191B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_LongTermLineOfCredit_4D4ADAF047661F5856625A8257DF83CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityNoncurrent_4FE79274DF63FF13A3E35A8257E0A0A7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_EC5C06116E15AC2109A05A8257E07A57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_1D684FFC9E039EC4ABD75A8257E0157B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_CommitmentsAndContingencies_6938AF4354E0CE54FBF25A8257E084E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_PreferredStockValue_EFE589A68853B2439E605A8257E0B2A2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_CommonStockValue_C6528B1E3D80188945505A8257E1DDA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_52DEB7DF62B42C28F0DA5A8257E1CF12" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_65CE27322B2B00C177285A8257E164EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8043A631BE21A7CA1E1E5A8257E12BC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_TreasuryStockValue_507E47822547F37D70525A8257E2F1A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_7752FAF4FE662C3FA27F5A8257E01342" xlink:to="loc_us-gaap_StockholdersEquity_D59E03950740A90CD6D35A8257E2E344" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_F412236D301EB5B4CADF5A8257DE29A4" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_FE48321541B5DD6C6F215A8257E2CF01" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_313E82AD3423143F2DFA39C19A092FF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_5D188012F9895F612A0039C19A09E87E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_8E24E095CF56C5D798D839C19A0901A9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_PreferredStockSharesIssued_C1A7D5BDDB606790687D39C19A09FE3B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_A63BFC99A0E9E75667C839C19A092CF4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_3389F090A1F7AD9A5E4B39C19A0A8208" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_CommonStockSharesIssued_E180A8921C1D2DF61F6139C19A0A137B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_3DB5ADF03448F67A339439C19A0889FC" xlink:to="loc_us-gaap_TreasuryStockShares_455A787420051B0BBF0B39C19A0AEB47" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:to="loc_us-gaap_NetIncomeLoss_F10D822488213C76831D5A8257BF65E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_87604080053069DC6CF15A8257BF22F1" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_4D776DB586DDE98D40605A8257C08E1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_us-gaap_ShareBasedCompensation_5CE49D43B47BCD0211B55A8257C04519" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_1262477FDC8388022D3B5A8257C0D41B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingLeaseRightOfUseAssetsNonCash" xlink:label="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_tyl_OperatingLeaseRightOfUseAssetsNonCash_37BF96D7B9E735A81EF85A8257C0094E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_0E914BA078394201EF825A8257C044F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_05A04F62629DC23B99635A8257BFC2DE" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_64438808D0AE42AA7E7A5A8257C173B8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_6A1582C5BAEEC7C75C845A8257C154DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_771D6220E266FAF974005A8257C18D46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_E562C65591E823E6788D5A8257C26133" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_IncreaseDecreaseInOperatingLeaseLiabilities" xlink:label="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_tyl_IncreaseDecreaseInOperatingLeaseLiabilities_D8F7712274B4F324DDF85A8257C242E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_57A3667B14C561A80C295A8257C2252C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_C83ABAD6AB4DB0F871CF5A8257C13555" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_96E5A3EEF89CFD81D5EE5A8257C2E01F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_45221AB579686AA478065A8257C2A6D7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_4061FAF6DA1825EC33F75A8257C3466E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_62658E7CE553DABCDFE15A8257C3375F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_BECD79859A65B551BAB75A8257C3BF86" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForSoftware" xlink:label="loc_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_PaymentsForSoftware_FA000EA3B7939B02BD185A8257C382C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_E7AAFE63FAF74FA119105A8257C3D4C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_11A47E94AB380C1838FB5A8257C3EA8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_414E7D6B9D9477EC84015A8257C2F61E" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_CC1AC65A71A1A210B6745A8257C44C7E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="loc_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="loc_us-gaap_RepaymentsOfLinesOfCredit_27C49FA35538868A87825A8257C434B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_A4393FDFA98C6EC91C745A8257C556C1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_5828B4854181BF40D89A5A8257C5BF8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="loc_us-gaap_ProceedsFromStockPlans_AD57F2C5649C542582EE5A8257C580A9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_12289F67AD1209A738655A8257C4A161" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5753367DA3B2C13BB0645A8257C5E8EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_54678404E76DA19F81065A8257C553A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_DC6975E69F8664E5FFB85A8257C531A7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_4742C3F0013DC062EA875A8257BF392C" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_1AAF08E6DCE7F781B4E95A8257C62885" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_796BD6323269802CC6AD1107C76237FD" xlink:to="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:to="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_F5D0E2082FF9754A10491107C7625A89" xlink:to="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareLicensesandRoyaltiesMember" xlink:label="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_SoftwareLicensesandRoyaltiesMember_DEE01A47C955CCF24D241107C763CC48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_1CEA75CEF70A0BC3800A1107C763F595" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_1CEA75CEF70A0BC3800A1107C763F595" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_B010BD39D20CB26EAC351107C7634459" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_TechnologyServiceMember_B010BD39D20CB26EAC351107C7634459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_9529144D1452FEBF57DE1107C763DBFD" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_us-gaap_MaintenanceMember_9529144D1452FEBF57DE1107C763DBFD" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AcquiredSoftwareMember" xlink:label="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_AcquiredSoftwareMember_05459F1DE18EC54C4A631107C7645508" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareServicesMaintenanceandSubscriptionsMember" xlink:label="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_SoftwareServicesMaintenanceandSubscriptionsMember_34E163012976275C82871107C76440CA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_A1E7D664874E309E86CF1107C763A48A" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_AppraisalServicesMember_A1E7D664874E309E86CF1107C763A48A" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_E022BE3C0BE8C0EDBBA01107C7624F23" xlink:to="loc_tyl_HardwareandOtherMember_656E994BA27ACDF998241107C763404D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_88226433A6F78C548C091107C762A189" xlink:to="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_21C7F6ABD94B547F96271107C764D3DF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_C7032F3450FD391CD5121107C7643F56" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_21C7F6ABD94B547F96271107C764D3DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfRevenueAbstract" xlink:label="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_1324B6334DE845B616F41107C764724B" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_95176D53A0392D4E0FE01107C765507D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_GrossProfit_46D2A80D0D3BDBDE95261107C7653C36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_7E2076AF185A4247D3801107C76558ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_119958FDA6434AB2E2C71107C76510E7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_119958FDA6434AB2E2C71107C76510E7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AmortizationofCustomerandTradeNamesIntangibleAssets" xlink:label="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets_167665B4EAA11F546F441107C76501EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_OperatingIncomeLoss_A1B082FB35A73740FEC81107C766B483" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_FAC9395E828A9E82CB831107C7666B02" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_A078043E5A3985B73DAA1107C766BC66" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_A078043E5A3985B73DAA1107C766BC66" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_24BA7C77EB29EDDDD55B1107C7667630" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_NetIncomeLoss_EEC1CF276AA721A2CF1D1107C766B6DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_962118BF40B943F2FE351107C764A893" xlink:to="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:to="loc_us-gaap_EarningsPerShareBasic_E4B5DA74132CBF87ACE11107C766A27B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_AC5CDE485D0CB9DB1A5E1107C7661847" xlink:to="loc_us-gaap_EarningsPerShareDiluted_E572C9B95BF3C5A04F561107C767F7A9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_1A2150483A2EE14C776941190D650D1A" xlink:to="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_AFFAD28783CB83A0DBC141190D657ACC" xlink:to="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_CommonStockMember_3613C7E35B3501A62A1741190D666D67" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_101ED2C3639A410A5C9541190D662B80" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7964C6EC1E37EFF1519541190D66D01B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_RetainedEarningsMember_9438B8DEE10FCE4AF5B141190D67A6EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_9AB11A8D0876CB771B9941190D666A9F" xlink:to="loc_us-gaap_TreasuryStockMember_571A711D854FD3D83D0C41190D67363E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_4DE230BA772B3ADD93A741190D6570BD" xlink:to="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_E9FD337683FEE0AF5FEE41190D67877E" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockholdersEquity_443857C5AB3EA69162BE41190D67E1AE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_SharesIssued_2C3AE9907521824F2E6941190D68563D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_4609C207297FD902CAF341190D685C18" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_NetIncomeLoss_4609C207297FD902CAF341190D685C18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_D42BAB097FD47A56749341190D6806E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_B1D77CB148EE1E9E16D941190D68F074" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_FE108DA26A2272D661AA41190D6877AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_DBDF91573E62002815D041190D691FFA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6FD2DD9DA24FAE69BC3641190D69D98E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7BB606BB6A2FFB936E0F41190D695CC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_709E57DA6F76EB4F85B641190D691A5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_DAB8B8CB33C23BB3721341190D690E47" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_1B04CA5E4FB635FD824041190D69A0F8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_04FD66645CCFB38DF4ED41190D69F2A7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_StockholdersEquity_69647204E6D705CDD75041190D6AE676" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_A20A2976A271C800ADA141190D67270E" xlink:to="loc_us-gaap_SharesIssued_2DB377D536F62765923141190D6A1E40" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/Cover" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:type="locator" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentType_5E892BC9156D1C94F3623050716390C1" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentAnnualReport_CAF44F6C0ADDF1666E0330507163EB63" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentPeriodEndDate_8699768DD0ACEAAE24B830507164F376" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentTransitionReport_6AB626D591D017A256CB30507164E379" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityFileNumber_30BD295004DC7BFA19E33050716489B9" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityRegistrantName_3428517EFA436591FE6E305071645D16" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityCentralIndexKey_B83C8C225C1CBA7F894A30507164DC54" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_CurrentFiscalYearEndDate_E7D3378AD20A1A9586E930507165DB07" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentFiscalYearFocus_D9ADED5F78861CD1B26F30507165B002" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentFiscalPeriodFocus_8A574BBE64980705D07830507165E49F" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_AmendmentFlag_B8DFF39AC4023224874830507165F104" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityIncorporationStateCountryCode_6A58E7E846E9C0E3A052305071652A31" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityTaxIdentificationNumber_9832BC9F60C45A2E6ED0305071654956" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityAddressAddressLine1_209F16F5A798C857525630507166CC8F" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityAddressCityOrTown_E772547A2A31C61BA38A30507166F996" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityAddressStateOrProvince_CBD97EF766064726CA9930507166A788" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityAddressPostalZipCode_807FD32E33EFA85934F53050716629EB" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_CityAreaCode_18D9DB162E2E9A62C7FB3050716616DC" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:type="locator" />
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_LocalPhoneNumber_68B6462E6C16611A79D7305071679B8B" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:type="locator" />
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_Security12bTitle_B6FE399967AC7CE6C2933050716706CA" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:type="locator" />
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_TradingSymbol_46B1B20B0997FB40EAF23050716735F8" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:type="locator" />
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_SecurityExchangeName_E832400DAFDBEB17B8D530507167E31A" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:type="locator" />
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_2ADF1C514E3093B4EA8F30507167858F" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:type="locator" />
    <link:presentationArc order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityVoluntaryFilers_11A15E89A1ACD3BB76A9305071676743" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:type="locator" />
    <link:presentationArc order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityCurrentReportingStatus_899219AE111ABC6EFD6A305071686E94" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:type="locator" />
    <link:presentationArc order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityInteractiveDataCurrent_E78E14630DF9AC6EA63830507168E023" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:type="locator" />
    <link:presentationArc order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityFilerCategory_8145ACC24DA681FACC5730507168AB7C" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:type="locator" />
    <link:presentationArc order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntitySmallBusiness_19A42E07A443E30FB3A73050716961D0" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:type="locator" />
    <link:presentationArc order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityEmergingGrowthCompany_B45C79D7259137D5114A305071696431" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:type="locator" />
    <link:presentationArc order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityShellCompany_F0D22E7C5800E5B700B9305071695A98" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:type="locator" />
    <link:presentationArc order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityPublicFloat_7BFC8D67A91A1AED6E6C3050716A34A1" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:type="locator" />
    <link:presentationArc order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_A4471C13BB8877BD51E23050716A93A6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:type="locator" />
    <link:presentationArc order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_E816CCF38B340136FD01305071639AD5" xlink:to="loc_dei_DocumentsIncorporatedByReferenceTextBlock_98D370829864F81354D13050716B68ED" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredCommissions" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/netLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_DB60D2BD1EB74CEAC1C42FE9528FA9B6" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_E8A0078F7382262CFE892FE9528FDF16" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredCommissionsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_184BAEFA2797968AD33339C198495AF2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostTable" xlink:label="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_184BAEFA2797968AD33339C198495AF2" xlink:to="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:to="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_133865A7D4E9CCD1D7E539C19849596D" xlink:to="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_A202806EE983DF8CCB9439C1984A530C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:to="loc_srt_MinimumMember_A202806EE983DF8CCB9439C1984A530C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_8B20A8582E2647A8F53539C1984A8B27" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_DCEA5F2AF5D6C47A1F1339C1984AE69A" xlink:to="loc_srt_MaximumMember_8B20A8582E2647A8F53539C1984A8B27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostLineItems" xlink:label="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostTable_74C1908FE2BC8604C48239C1984956A8" xlink:to="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionsAmortizationPeriod" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_DC0A1B28E4CBC01B437939C1984A07E2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CapitalizedContractCostLineItems_29601337A9F57AD534A239C1984A1BD6" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_DC0A1B28E4CBC01B437939C1984A07E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_184BAEFA2797968AD33339C198495AF2" xlink:to="loc_us-gaap_CapitalizedContractCostNet_DC39F651449E1317ACD039C1984B0CD8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedContractCostAmortization" xlink:label="loc_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_184BAEFA2797968AD33339C198495AF2" xlink:to="loc_us-gaap_CapitalizedContractCostAmortization_B81A85D44EC151CC668439C1984BD00D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_D3CD2284CCC769391E922FE9529E1D2B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_D3CD2284CCC769391E922FE9529E1D2B" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_C3FFF3398A064ECDC75F2FE9529E26DA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_3438B3630929C7270A332FE9528F079A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_3438B3630929C7270A332FE9528F079A" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:to="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_1A3B71964391B27E0E462FE9528F85A4" xlink:to="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_D81EC5E50AE0076BF3832FE9528FC40C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:to="loc_us-gaap_OperatingSegmentsMember_D81EC5E50AE0076BF3832FE9528FC40C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E1F3CAADAB3EE722D34C2FE9528FD42B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_BF535D94A1E453C645FE2FE9528F52B6" xlink:to="loc_us-gaap_CorporateNonSegmentMember_E1F3CAADAB3EE722D34C2FE9528FD42B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_3AF0E3844042FE81DF5B2FE9528FA863" xlink:to="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_42A09FFAD70F11548A752FE9528F2EBF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:to="loc_tyl_EnterpriseSoftwareMember_42A09FFAD70F11548A752FE9528F2EBF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_C7F8EAC6B93D0715A9C02FE9528F88A0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_462E814AE707570EEAB02FE9528F5702" xlink:to="loc_tyl_AppraisalAndTaxMember_C7F8EAC6B93D0715A9C02FE9528F88A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_46228816D9397EDFDAB92FE9528F4F7A" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:to="loc_us-gaap_ContractWithCustomerLiability_6728D8322EB6E72341E02FE9528FAF5D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityRollForward" xlink:label="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_1164EDEED864156EC83E2FE9528FFB3F" xlink:to="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_us-gaap_ContractWithCustomerLiability_194FF70501A465B4751F2FE9528F1AC7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ContractWithCustomerLiabilityIncreaseFromDeferral" xlink:label="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral_7752963F3915A9801E4F2FE9528FB923" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_65A7CB8239EA0B468B0E2FE9528F3CE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_ContractWithCustomerLiabilityRollForward_795729CD0E43D8F002602FE9528F33C5" xlink:to="loc_us-gaap_ContractWithCustomerLiability_11F1DB7E8DE2A2681A032FE9528F7D0A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_21C16F4432B0EEA1145B2FE9528F6343" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_21C16F4432B0EEA1145B2FE9528F6343" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligation_10093BE2311CCBF9F9862FE9528F0D03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_21C16F4432B0EEA1145B2FE9528F6343" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_A8B5C8A8C66DEC61939B2FE9528FFAA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_AFFFF88159A9134927632FE9528F3ED4" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_C8DBD134E5FB9F38A3142FE9528FEE05" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_632D4C8F837A311919D82FE9528F8A4E" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_6FC2BC2F2A48943BB9DE2FE9528F74D7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_49AD4D3A3D3D3110B4C82FE9528FAEE7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_49AD4D3A3D3D3110B4C82FE9528FAEE7" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_16BD4EB26A2EFFACF1102FE9528FDECF" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenue" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_678E204A7E0B0E3C567F2FE952AEDC7E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_678E204A7E0B0E3C567F2FE952AEDC7E" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_105FE645197B10BABC6E2FE952AEDA7D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_22CBB772D84C846B8D5941190A3867FA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_22CBB772D84C846B8D5941190A3867FA" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_6BB4DE7051A2DD42938341190A38A9BC" xlink:to="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LicenseMember" xlink:label="loc_us-gaap_LicenseMember_0B288E02F3D8A5EFAD5841190A39CC09" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_LicenseMember_0B288E02F3D8A5EFAD5841190A39CC09" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_F0D48F6FB54D5674AD0441190A39FF79" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_F0D48F6FB54D5674AD0441190A39FF79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_A6723BEA68E305E9CEC241190A3A299B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_TechnologyServiceMember_A6723BEA68E305E9CEC241190A3A299B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_494928C37AF67433058741190A3A23EF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_MaintenanceMember_494928C37AF67433058741190A3A23EF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_0B19E43D1174500328D641190A3AFD2C" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_tyl_AppraisalServicesMember_0B19E43D1174500328D641190A3AFD2C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2E2C2BFAFC815C2BABAF41190A39A7C6" xlink:to="loc_us-gaap_ProductMember_77477786D41F78C30AA241190A3A5212" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_0F33A2AB250348955F9E41190A3A4AF8" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_A32F9B5B3F45120400F241190A3B568C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransferredOverTimeMember" xlink:label="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_6A312ADEBEE06091178241190A3A03B4" xlink:to="loc_us-gaap_TransferredOverTimeMember_85CF3807376FA7F7D30341190A3BE190" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_220CD18F4BA11A5B69D241190A3B2E35" xlink:to="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_BBB76CD050C171DB1EA941190A3C820B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:to="loc_srt_MinimumMember_BBB76CD050C171DB1EA941190A3C820B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_F5D48C1879020713A25B41190A3C3795" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_1AD44F9366953AB1B42B41190A3B3254" xlink:to="loc_srt_MaximumMember_F5D48C1879020713A25B41190A3C3795" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_F2A372AFC7D3A60A136441190A3CA8CE" xlink:to="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecurringRevenueMember" xlink:label="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:to="loc_tyl_RecurringRevenueMember_B9B4571ABB3EC3C01EB541190A3D1DA7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NonrecurringRevenueMember" xlink:label="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_5DDD0CB9972FCBD624CA41190A3C0C4C" xlink:to="loc_tyl_NonrecurringRevenueMember_454354455E76D7620B3E41190A3D3ED0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_A6F29979F61614EBBED641190A3D12FE" xlink:to="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_C20F26C8FD188ABE5AF641190A3DB3A8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_tyl_EnterpriseSoftwareMember_C20F26C8FD188ABE5AF641190A3DB3A8" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_5EB9017F450C52FDFB1641190A3EEFFF" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_tyl_AppraisalAndTaxMember_5EB9017F450C52FDFB1641190A3EEFFF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_2309715C7C0836FF23FE41190A3E63CE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_4FBDBC943CC6B2159D2841190A3D1C71" xlink:to="loc_us-gaap_CorporateNonSegmentMember_2309715C7C0836FF23FE41190A3E63CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_634A76EE6ECB9A283C4441190A3E742F" xlink:to="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="loc_us-gaap_IntersegmentEliminationMember_33D61E39A2D7476A8F0541190A3F6DE7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_IntersegmentEliminationMember_33D61E39A2D7476A8F0541190A3F6DE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_265B3CC0A080E85E947541190A3FCEFF" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_OperatingSegmentsMember_265B3CC0A080E85E947541190A3FCEFF" xlink:type="arc" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_us-gaap_CorporateNonSegmentMember_2309715C7C0836FF23FE41190A3E63CE" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CorporateAndEliminationsMember" xlink:label="loc_tyl_CorporateAndEliminationsMember_6B9BE27D2DD292568BD041190A3FB93D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_6C3AD4B94B07821DD5D541190A3E3AB4" xlink:to="loc_tyl_CorporateAndEliminationsMember_6B9BE27D2DD292568BD041190A3FB93D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_C72A43356099689C1D2F41190A38657E" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_A809D8428FF469C4613341190A4090C4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_A809D8428FF469C4613341190A4090C4" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_CACCFCF40B2BB40A9C7941190A40A8EC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_CACCFCF40B2BB40A9C7941190A40A8EC" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_E3FE39B01D01BCC7A53241190A403360" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_517BFF5901C5B66FE5C741190A3F22B4" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_E3FE39B01D01BCC7A53241190A403360" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/DisaggregationOfRevenueTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7389755081C1DCD44B0D2FE952AE80AD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7389755081C1DCD44B0D2FE952AE80AD" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_FD927D3C0AF8A5490B072FE952AEF4D5" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EarningsPerShare" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_379E0EFBF6E88EDA458E2FE9530C692B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_379E0EFBF6E88EDA458E2FE9530C692B" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_2A72F9BE650D3F64BB292FE9530C68B8" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78ADAB6AE8F5DE4068552FE952FC4771" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_7BD04ECD9841CC8237AB2FE952FC5385" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_0C6A983DE55A482633E22FE952FC20EA" xlink:type="locator" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract" xlink:label="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_0C6A983DE55A482633E22FE952FC20EA" xlink:to="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_E2084698156561FFED4E2FE952FC2D27" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract_E091781578CB3BD6EAD62FE952FC7BA5" xlink:to="loc_us-gaap_NetIncomeLoss_E2084698156561FFED4E2FE952FC2D27" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DenominatorAbstract" xlink:label="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_0C6A983DE55A482633E22FE952FC20EA" xlink:to="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_25E704476ED7B681C4ED2FE952FC1D2D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AssumedConversionofDilutiveSecuritiesAbstract" xlink:label="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_DenominatorAbstract_7C74F999E8C53ED953592FE952FCD336" xlink:to="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AssumedConversionofDilutiveSecuritiesAbstract_92B60A0880C49CE2308A2FE952FC639F" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_A597C8DD196BBB5D1FCC2FE952FCB968" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_0C6A983DE55A482633E22FE952FC20EA" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8B7B31A7130ED2CF07812FE952FC42AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_0C6A983DE55A482633E22FE952FC20EA" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_36561B8B4CA3905F0FCF2FE952FC5A97" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:to="loc_us-gaap_EarningsPerShareBasic_36561B8B4CA3905F0FCF2FE952FC5A97" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_49A76596350112C5A1982FE952FC252B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_E8886F06F2A7667FBA732FE952FC0254" xlink:to="loc_us-gaap_EarningsPerShareDiluted_49A76596350112C5A1982FE952FC252B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EarningsPerShareTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_D854BF7723AC154E5A762FE952FCC5F9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_D854BF7723AC154E5A762FE952FCC5F9" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0A511D036B700E0A814A2FE952FC3FD1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlans" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PostemploymentBenefitsAbstract" xlink:label="loc_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PostemploymentBenefitsAbstract_3B5B73EC3F7A907E1A2F2FE952CD9C16" xlink:to="loc_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock_C8C66D84C36AE86B74BC2FE952CDEE9E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_C0A49F44D80CFA137DE82FE952CDAA43" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:to="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_A8726D30AF0B890E461A2FE952CDF1D2" xlink:to="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_CB2D71CA41656273E6012FE952CD2C37" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_CA47D0138797659D44562FE952CD1EEB" xlink:to="loc_srt_MaximumMember_CB2D71CA41656273E6012FE952CD2C37" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_B26F689E01959F3459A62FE952CD467B" xlink:to="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_4E1EC4186CCC2AF8AFDD2FE952CDF263" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_535D8B950BBC8D7BEFD32FE952CDB00F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanDisclosureLineItems_E89EB675BF814C70E9F22FE952CD323F" xlink:to="loc_us-gaap_DefinedContributionPlanCostRecognized_C591B19DE6EE113140A82FE952CDF3BC" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_002B92A45E793AC0B7992FE953F64981" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_002B92A45E793AC0B7992FE953F64981" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_D08FEA2A31BFF3301FB92FE953F68E64" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_EE7A07D4A08B7FBEB3B72FE953D72947" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_EE7A07D4A08B7FBEB3B72FE953D72947" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_D9CF505EF2CF4D8F16A12FE953D7D578" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_8F37C3C7B7E671FED72D2FE953D72FB7" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_B72F24940EF4CCCEC3D32FE953D7ED50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_9709F1332BD023AC43D72FE953D7761B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_C06B325A678A2C3813E12FE953D7A34B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8D7736EC3C03E77F0D202FE953E637B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_460911629F2B527DE0792FE953E6B1A1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_3479BE7ABD029C9823762FE953E6C853" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_6643F755FA12E022A0632FE953E66A98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_31B1A4AEBE0E29A076A12FE953E6659A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_60975A5737633F6621792FE953D7BFA1" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_1AD24A6BC4AE6B6883852FE953E669FB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3432863AF4826B18E98F558B3B0806E6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3432863AF4826B18E98F558B3B0806E6" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_66A8459427BD2D23C266558B3B08FA84" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_0B1EF6AE5DB13380A1FF558B3B09E9D6" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_tyl_SoftwareAcquiredMember_B06ADEE6BD7CB9846455558B3B095D7E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_TradeNamesMember_FCA40E4E790D0FC7BF95558B3B094297" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_087BBB7273F1BDBB9003558B3B0A8E69" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_087BBB7273F1BDBB9003558B3B0A8E69" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_9A1465F71D2B07E3A902558B3B0A0ABA" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1CC5009A07AE86FD09D8558B3B094D3D" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_9A1465F71D2B07E3A902558B3B0A0ABA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable_D2CEE68FB84C8153ED0F558B3B082651" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_46356C50DED11BD1BCB5558B3B0A2020" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_Goodwill_46356C50DED11BD1BCB5558B3B0A2020" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_E547A90EE6F8DF132F48558B3B0A789C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0AFD91C0564C5614A439558B3B0B31C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_B75067D93D5DCE67CF51558B3B0A9778" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_1901D2B1B928661E9D11558B3B0BFDB4" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E9C14025DA14E4715AF52FE953E6C551" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E9C14025DA14E4715AF52FE953E6C551" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_BF857344ECF84A6706D42FE953E6B35C" xlink:to="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:to="loc_tyl_EnterpriseSoftwareMember_2387CFE902C789EE4A3B2FE953E6A180" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_DA257EE64C113B3222852FE953E676F2" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_C80F0FEEB59ECC86C8832FE953E60BA8" xlink:to="loc_tyl_AppraisalAndTaxMember_DA257EE64C113B3222852FE953E676F2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_B5066E045603147E1EDA2FE953E62A4F" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SocrataInc.Member" xlink:label="loc_tyl_SocrataInc.Member_113D5318B45CC13F6AED2FE953E60E63" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_tyl_SocrataInc.Member_113D5318B45CC13F6AED2FE953E60E63" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_5F7163A1A5158C60EC352FE953E6A704" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_MPHoldingsParentInc.dbaMicroPactMember" xlink:label="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_595C06B97E3830AE28CA2FE953E6C884" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_6504A14D3B2F00354B9D2FE953E6506B" xlink:to="loc_tyl_MPHoldingsParentInc.dbaMicroPactMember_595C06B97E3830AE28CA2FE953E6C884" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_413A8F6A3A77155693C72FE953E687F7" xlink:to="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillRollForward" xlink:label="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_6B55E3911BD1783506472FE953E664BC" xlink:to="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="loc_us-gaap_Goodwill_8ECC4D468C9BCF1CA20C2FE953E64718" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_7C3114C4CD7FA3885D682FE953E62905" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_AA5F5089B91002C392C72FE953E6EDAE" xlink:to="loc_us-gaap_Goodwill_7CFF67FF8D6E7E4CA60B2FE953E6E55B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_646D8FD5134E4A7A32EC2FE953D7AE41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_86D01ADBADB4F2984E4B2FE953D761B8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F8D97EC28D225125A7B02FE953D76A7D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_F532A03D0057C56472672FE953D7E2B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_78521C90B1B7DF0E6D022FE953D7F8D4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9C645C7F30E1A06BCF802FE953D74D80" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_E1E2B8498952512015472FE953D78E9F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BC96EA97CD0068555C441190C96BA86" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_0E43A1E2F495A70ECAD641190C96204D" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_CustomerRelatedIntangibleAssetsMember_6B9DA32BCA6996338B1041190C977873" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SoftwareAcquiredMember" xlink:label="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_tyl_SoftwareAcquiredMember_6009F4EB3830E609DF6441190C9796B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_TradeNamesMember_58DC357F2377FB33C33341190C97B224" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_SoftwareDevelopmentMember_475E4D50D48205F7E325416D8645C415" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAcquiredInPlaceMember" xlink:label="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_61CF5D5C2AF1D1692F0341190C974EE5" xlink:to="loc_us-gaap_LeasesAcquiredInPlaceMember_C240BABE33FEA873B48641190C985266" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_16C9A8B149217E425C8741190C96FFA8" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_5C15B39AB5727084D85E41190C9861CD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_64679BD8B926CCDC0BFD41190C98ED4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_4084DC662EAB85BE6BF241190C9897E6" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_B53EF8E877AF94AF66F441190C991A8E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_626688F78E5DFC4A95BB2FE953F6E6DF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_626688F78E5DFC4A95BB2FE953F6E6DF" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_EBEDEBC849E1285D0C2E2FE953F6CF8D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_626688F78E5DFC4A95BB2FE953F6E6DF" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_418B5FA5B8B3B0E2EDB12FE953F61BB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_626688F78E5DFC4A95BB2FE953F6E6DF" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_E7306FA085BD55F5BDFE2FE953F67975" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_626688F78E5DFC4A95BB2FE953F6E6DF" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_586E45742DE6972D03BE2FE953F6918C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTax" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_7F663B15478B4B72BE1F2FE953B78683" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_7F663B15478B4B72BE1F2FE953B78683" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_F364406A9A79F86321A12FE953B73AE2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_60CD0725ADD4C65A9E3541706B25AC18" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:to="loc_us-gaap_DomesticCountryMember_B867869F1C9C1109904F4170990AC627" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_D6B29D81EA092F8B558941706B35758E" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_2495B6C168D1F36EAD654171062E7852" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_587C8EAB79F47BA58F6441190BD1A433" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_OperatingLossCarryforwards_F3BC6F88CA6FA717D6F5417048C514F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_C006617204D38541F34941719E56213F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_58EEDC893DD3BE6364CE41190BD79C2E" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease_08B8B26E906A140C6E0B41762F1B62B1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_181BA1CE49CF71018C2B41190BD11A07" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_AFA51A73C5503D21474941190BD80C21" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_A89D7C22B5A5DD72EB202FE953B7E259" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_CEDB2E41E8848EBBAF4B2FE953B7CF6C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_C5E20778D3936C2D948B2FE953B73F87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_97ABCCCCF3F4E0C5A25D2FE953B7360B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_FED766822E3705476E0D2FE953B702F9" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3B1F348E9E551F0861F22FE953B7976B" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_FED766822E3705476E0D2FE953B702F9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_86A79F44691A9AA56F5A2FE953B734F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_66D8BC601E27FDFD6D722FE953B7C722" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_4410B00D7FEB97CD6C992FE953B7D479" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53EA129BFB8BC23FC6712FE953B78C57" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_19301E17E370BD05D9642FE953B70B98" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_9E984BC525DD41D16CEC2FE953B77087" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_DD07E9095D6BE457A4E72FE953B7B54E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_33E5E6BBD999CBD5E40B2FE953B73452" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_332A0E222575E973561A2FE953B79DFD" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_C5FAE69B840E5F84D7D62FE953B7920F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:type="locator" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible" xlink:label="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible_55B0825930D3FEA31A972FE953A8DC50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits_FD1B5748F4AB920881952FE953A82AAB" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards" xlink:label="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards_12302525B8CA52B6DF092FE953A8278A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_454ACCD0852B0BC904F52FE953A8DA10" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_B2BA35ECB227416DB15A2FE953A85AD2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_02F1AA3C32FECF78D2162FE953A81B9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_FB2ADE359729FD9E0B092FE953A80460" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_4695A8D467C3DB5A456E2FE953A8B1B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_AA70148C00F96B14BBFB2FE953A8C4F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome_3EBFD099155AE5ADF1D02FE953A8A26C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_9F1CC11C780A114E1E092FE953A86E03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="loc_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_6AACBC175FDDD3FDBC9F2FE953A8F989" xlink:to="loc_us-gaap_DeferredTaxLiabilities_97551C36EF2BA39919482FE953A861C0" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/IncomeTaxTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_5288C9E0BD925CB00C562FE953B77B68" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5288C9E0BD925CB00C562FE953B77B68" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_ABE133C6B09E638D3B1E2FE953B72FE5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5288C9E0BD925CB00C562FE953B77B68" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_4BCF4A60EB71552EE68E2FE953B76E8E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_5288C9E0BD925CB00C562FE953B77B68" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_DCAA062731E146245E902FE953B79D35" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/Leases" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_A2C4371FCF07D119A68441190AC56D09" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A2C4371FCF07D119A68441190AC56D09" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_C0743AF71EF82E3A62ED417CF76B782F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesOfLessorDisclosureTextBlock" xlink:label="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A2C4371FCF07D119A68441190AC56D09" xlink:to="loc_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock_1E3B8F31349E6D4D850A41190AC5E813" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_C337F515FE8041F345772FE952EC99B9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_C337F515FE8041F345772FE952EC99B9" xlink:to="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:to="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_0E30C1E510B53E0BE5F82FE952ECC5CC" xlink:to="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_B2C618135E90938839D72FE952ECAAA3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:to="loc_srt_MinimumMember_B2C618135E90938839D72FE952ECAAA3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_70009031D1250CC17C3D2FE952EC6A12" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_0A6DF73F5FC929E023C22FE952EC1D22" xlink:to="loc_srt_MaximumMember_70009031D1250CC17C3D2FE952EC6A12" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasedAssetsLineItems" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_5513296AD1EC5BA3623B2FE952EC828B" xlink:to="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_ED918E1BD7130B562D032FE952EC4D40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_EFA8FE46B3A46B6085B82FE952ECF0AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LeaseCost_24FBA43EF90BAC5DD0FA2FE952EC72C2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeaseRenewalTerm" xlink:label="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_LessorOperatingLeaseRenewalTerm_FDF15665BF94D96C91512FE952EC68FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RentalIncomeNonoperating" xlink:label="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_977DD0879F9FBA865AD32FE952ECD8FD" xlink:to="loc_us-gaap_RentalIncomeNonoperating_4D2E2C7EAF4F29B137E62FE952EC9812" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_87A51F4D786D0553451E2FE952DD457F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_19F0F7E92CDA5784D1192FE952DDB66F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_8039802CBC081C978B2F2FE952DDCC4E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_742D2F55B9EF51749D082FE952DDB688" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_480A8A9B5607AACD914B2FE952DD1158" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_D12ECC9BDFE17ADE9C982FE952DD3BBD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_CAA9D93DF625D59A07B32FE952DDACF7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_B26E02649B691C3441BC2FE952DDA4B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_872DAE2AA365A6221D812FE952DD4768" xlink:to="loc_us-gaap_OperatingLeaseLiability_B4310D4427C563EDF1BD2FE952DD9751" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_3BE30700C69EF5B5ED1641190A79E2B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_4CA0FC230199B91A0EC941190A7A2BEE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_6B89C3E8567AE4FC97BF41190A7AF750" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_69D53BF568336BB3D4B641190A7A72CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_2DFD77C03BAEF9284C2641190A7A69EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_B4AF767E366AD1BF974A41190A7ACA03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_474AB051D4F541A8FA0441190A795CD8" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_1A4DE2B64143329D1B3341190A7A484B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear_649BF56C3E90D1C2B63C41190A73DDBA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears_C7B781175E36FAC4400441190A747F08" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears_D7B7E24C3F9A0F5704A941190A74D6E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears_B236C39E1243D4A4E42341190A740802" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears_3E1CC58973ED25473E1F41190A7421A3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter_510A93F4E27DB510166F41190A746D41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1A4995E814BA266C4F3241190A73278E" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_70F35403DE5CB1FE3B8941190A751803" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:to="loc_us-gaap_OperatingLeaseCost_3BA9251DC0C7A1889D6F2FE952EC83A4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="loc_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:to="loc_us-gaap_ShortTermLeaseCost_0ADC5496BFE393DB11F82FE952ECAFAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableLeaseCost" xlink:label="loc_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:to="loc_us-gaap_VariableLeaseCost_9800E56137063FBEF7412FE952ECE4C1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_A420523408E3B7AD818D2FE952EC51AB" xlink:to="loc_us-gaap_LeaseCost_22FCE84EE82D6C75F21C2FE952EC2021" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_FF826789D8E9B3CCA0522FE952EC0DC3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_FF826789D8E9B3CCA0522FE952EC0DC3" xlink:to="loc_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_C4F8F88E5D0A6C18D6752FE952EC20A0" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_DBFC35672327363166922FE952ECAE9A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_FF826789D8E9B3CCA0522FE952EC0DC3" xlink:to="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_0EA627FE2B1F6B4FC1A02FE952EC5851" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_84079567AF337A1940392FE952ECD7EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_C33AB15634579EBC92D22FE952ECB228" xlink:to="loc_us-gaap_OperatingLeaseLiability_BE7A35DB8DA62C4A01222FE952EC0248" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_48251FC09D91807124912FE952DDA66D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_48251FC09D91807124912FE952DDA66D" xlink:to="loc_us-gaap_OperatingLeasePayments_E9C3466B79EE22427CB92FE952DDFBC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_48251FC09D91807124912FE952DDA66D" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_9F11608807666F4668272FE952DDB45B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_48251FC09D91807124912FE952DDA66D" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_2AD1963970A04FB7DD402FE952DD9A1E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_48251FC09D91807124912FE952DDA66D" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_B75258D87E880B3A3D0E2FE952DDF405" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_04C4FA2B8E6BFE96954E2FE952FC00EA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock_5D33278390779875F68B2FE952FC140F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock" xlink:label="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock_91258963923AA683F9382FE952FC2BB6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_159B6D1D3B6337558AE82FE952FCAE83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_445AF373B373BF74E0D02FE952FC62E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:label="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_3F062879ADFA84D29B8B2FE952FC4F6F" xlink:to="loc_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_F4F79955C865ACAD22D22FE952FC90C1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNet" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_502A0B4E7C280F2DCA1A2F82CF3EEF13" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_502A0B4E7C280F2DCA1A2F82CF3EEF13" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3DA5BBAF860C9A680F702F82CF3F738A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_79B642F7014CDAF42B312F82CF30C6AE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_79B642F7014CDAF42B312F82CF30C6AE" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:to="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_F3D08535263D24FB3C5B2F82CF31F53A" xlink:to="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_LathamNewYorkMember" xlink:label="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:to="loc_tyl_LathamNewYorkMember_297BE6EABFF9FCBB97352F82CF31E7BF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_YarmouthMaineMember" xlink:label="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_973188BADF9905DB55BE2F82CF31F447" xlink:to="loc_tyl_YarmouthMaineMember_1C3E94CE55DF19F633F22F82CF31C62C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_27D6F83251592F604A962F82CF308AA3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_Depreciation_FCC62AA12FA31D9A41282F82CF329652" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForCapitalImprovements" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_ADB9FF8A588E022CBFE72F82CF325FE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBuildings" xlink:label="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_7DF5A5C9E5E755E8A2D62F82CF310AAE" xlink:to="loc_us-gaap_PaymentsToAcquireBuildings_89ADABC3A4D6DEBB4FBC2F82CF324272" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_F70379639FBDC12312B02F82CF3684F1" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_22D5F3F9301BD1C132D32F82CF37498E" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LandMember" xlink:label="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_LandMember_F7BD97BC882BDE6D87282F82CF37D145" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_BuildingAndLeaseholdImprovementsMember" xlink:label="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_tyl_BuildingAndLeaseholdImprovementsMember_DE3CFEB678068DE225D02F82CF389DC7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ComputerEquipmentAndPurchasedSoftwareMember" xlink:label="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_tyl_ComputerEquipmentAndPurchasedSoftwareMember_CF5B85BA397230D8993F2F82CF38DD29" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_1C78EFF28A97D241062E2F82CF38AA5B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransportationEquipmentMember" xlink:label="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_AA432292E8E830BEAD852F82CF376532" xlink:to="loc_us-gaap_TransportationEquipmentMember_90EFB6BC258D9951DCE72F82CF38421B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_95D5645148663B368B2C2F82CF381097" xlink:to="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_6766C055E074B75DB0D22F82CF390BD4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:to="loc_srt_MinimumMember_6766C055E074B75DB0D22F82CF390BD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_BB6FBEF4266268D7D9842F82CF39D045" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_D33C853D0F4FB1DF88912F82CF38759D" xlink:to="loc_srt_MaximumMember_BB6FBEF4266268D7D9842F82CF39D045" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_FA818FEDDED11E800E932F82CF367CF0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_FB604D9B21F4DCC58CC42F82CF398267" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_DA2A5E0C9F2EA951176A2F82CF3905D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_5C3EE516AD5D2A6877462F82CF3A7BDC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_2084E5742106E2AF7CB92F82CF392C82" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_9F81ACE6E4DB2BC0EC442F82CF3AF47F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/PropertyAndEquipmentNetTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8DA8F2BFC5E445C769182F82CF3C7330" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8DA8F2BFC5E445C769182F82CF3C7330" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_1F02016DB8C17C37215E2F82CF3DCBE8" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_92187ABBFE01F5474C9F2FE9527F18F5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_92187ABBFE01F5474C9F2FE9527F18F5" xlink:to="loc_us-gaap_QuarterlyFinancialInformationTextBlock_B910B413C89F748B5BC12FE9527F1D77" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/netLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_97F60D1DFEB7B403014E2FE9526F0FB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_GrossProfit_600ABCCE4DB895053EBD2FE9526FC10D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_F19B2FD1B122CE6B61A82FE9526F7179" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_0963BEC46E55589EA6A12FE9526F66E2" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_NetIncomeLoss_0963BEC46E55589EA6A12FE9526F66E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0864C95E478CFAA911E32FE9526F9B08" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_6CAD002A9D601689ACFE2FE9526FE93B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit" xlink:label="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D083FD76CC11F1F2C5252FE9526F01B0" xlink:to="loc_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit_86C01A1936709281B95E2FE9526F9CBF" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_D44775E4C9860DBB24AF2FE9526F9EA2" xlink:to="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_96D4A3333B4FA311B9432FE9526F9584" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCredit" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_DEA37CBCF765302A5D7B2FE953C70D74" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_3EECEF2706BA9C21A7E42FE953C7292B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_ECA1B0B8A6130CA8BF622FE953C700FE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_ECA1B0B8A6130CA8BF622FE953C700FE" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_97F20E5E7573919B4B0B2FE953C7C4AA" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LetterOfCreditMember" xlink:label="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_86F4C7F893A82169954B2FE953C7A4C9" xlink:to="loc_us-gaap_LetterOfCreditMember_8263373638235280B9852FE953C77E6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_B5F0B76E52E308598CF42FE953C7F1F0" xlink:to="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_7BB22850DC3662F1D5862FE953C7C509" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_2EBCFBCA3555389775752FE953C7FC40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_873CB04A8A79E555ED692FE953C76F23" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CreditAgreementMember" xlink:label="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_813056B2B0860A1619BC2FE953C72FFA" xlink:to="loc_tyl_CreditAgreementMember_32974B241DE9885197B02FE953C7354B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_D46F08A61DFD275FC0AC2FE953C7566A" xlink:to="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_6316C28B02469AF63E8C2FE953C7B34C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:to="loc_srt_MinimumMember_6316C28B02469AF63E8C2FE953C7B34C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_BD22690A331423FAC16B2FE953C74A50" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_C3CCA5AAC57E5542F2052FE953C7262F" xlink:to="loc_srt_MaximumMember_BD22690A331423FAC16B2FE953C74A50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateAxis" xlink:label="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableRateDomain" xlink:label="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_85AC07ECB31B62AF22712FE953C716A8" xlink:to="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:to="loc_us-gaap_PrimeRateMember_9203A8509C0EBF27E6452FE953C7FA27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_8ABD8107A2B5AB986CEF2FE953C730D9" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_CD92701996239BF8CF302FE953C7D26A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_CC1B4B317FB1C323C1E12FE953C76A21" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_4299EF6965180F1C18E92FE953C73EF2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_3716883FE01BAD9606F22FE953C7222F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_ADB34AF5BFE5C64391D42FE953C75990" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_BBC54301053191609D512FE953C7DE57" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermLineOfCredit" xlink:label="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LongTermLineOfCredit_567D7F07ABE450DFE3372FE953C7E3F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_285E51DD4913AAD5170A2FE953C79627" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberofOutstandingLetterofCredit" xlink:label="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_tyl_NumberofOutstandingLetterofCredit_B71BE9622AAA8B3B73432FE953C75BE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_885B8B5DB3F77EDE9BF22FE953C71E12" xlink:to="loc_us-gaap_InterestPaidNet_8FA8AD5A3B9BE8EA91BE2FE953C70E8D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformation" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_FC9BF7058C5AA80297312FE952BDE70F" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_88ADB1704333C8C3E8292FE952BDA26E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_9A7DB40EEDD53D72808C39C198AF9B31" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_9A7DB40EEDD53D72808C39C198AF9B31" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_E8B3E37E0C00C29F780A39C198AF16AF" xlink:to="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_F2C3810FD5C0E8C0FCD139C198B001EF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:to="loc_tyl_EnterpriseSoftwareMember_F2C3810FD5C0E8C0FCD139C198B001EF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_7AC433ADD13B3B0F1F4639C198B01B61" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3E9043D4F9A598A69A0039C198B03754" xlink:to="loc_tyl_AppraisalAndTaxMember_7AC433ADD13B3B0F1F4639C198B01B61" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_4BDF829A3D3F2D352BA639C198AF7ABC" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfBusinessUnits" xlink:label="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_tyl_NumberOfBusinessUnits_CEDE671350BC523DE52D39C198B15D18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_us-gaap_NumberOfReportableSegments_49C926CB724FCBA6D7DA39C198B1DC8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForCapitalImprovements" xlink:label="loc_us-gaap_PaymentsForCapitalImprovements_F7A7C03984B93579330839C198B18B83" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_644E69DF09EC0C24109739C198B0BDB4" xlink:to="loc_us-gaap_PaymentsForCapitalImprovements_F7A7C03984B93579330839C198B18B83" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_A0D4F2E387A587E104392FE952AECC86" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_A0D4F2E387A587E104392FE952AECC86" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:to="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_E264CC75CCC00F64CA642FE952AE80F3" xlink:to="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_3C0B9593894323232A5C2FE952AE3163" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaterialReconcilingItemsMember" xlink:label="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_10531DD2FF661E6074872FE952AE2AB7" xlink:to="loc_us-gaap_MaterialReconcilingItemsMember_E5298A4DF50FE675CA432FE952AE8E9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems" xlink:label="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable_9512C369957E1ADEB3212FE952AE3BAF" xlink:to="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_OperatingIncomeLoss_90AC6C79FFE89DA5D8442FE952AE0C1F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_82F7411F688CA0CE5E0B2FE952AE1FF3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_9F84A6B94DBBC99D90742FE952AE2ACD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_3D8FD3B3359309F2F8652FE952AE3F77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems_6EC85205579E5C95CD212FE952AE8C34" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_FD6B0B45FED4A429FC2C2FE952AE2438" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_7020F547CC886D79042241190A51A3AE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_7020F547CC886D79042241190A51A3AE" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_6D08A173997657D66D0941190A522621" xlink:to="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LicenseMember" xlink:label="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_LicenseMember_174BE0B990BCA96275FE41190A5211E4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubscriptionAndCirculationMember" xlink:label="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_SubscriptionAndCirculationMember_FA7C5C3CC054DAEC774B41190A5287D6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TechnologyServiceMember" xlink:label="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_TechnologyServiceMember_C5CD22A450497053765F41190A5336FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_us-gaap_MaintenanceMember_C05DC1462E9EE5CF834541190A536A97" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_0C39E51A5DB0A6665C9941190A53C7F7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_tyl_AppraisalServicesMember_0C39E51A5DB0A6665C9941190A53C7F7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_HardwareandOtherMember" xlink:label="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_B79B4268E60742BA600741190A523F65" xlink:to="loc_tyl_HardwareandOtherMember_EC6BCD52B0F6F59A5F7041190A53D217" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_CE9E6EAD742A299E6BF941190A53AB93" xlink:to="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntersegmentEliminationMember" xlink:label="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_IntersegmentEliminationMember_6E4F878EB30091A083A541190A5476EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_OperatingSegmentsMember_F0C1510409B3074C97DE41190A54023B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CorporateAndEliminationsMember" xlink:label="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_tyl_CorporateAndEliminationsMember_1587D625DD5BE4B2CC0A41190A544AFB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_us-gaap_CorporateNonSegmentMember_E32365727E25C7A6DA8841190A5592DF" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_OperatingSegmentsAndCorporateNonSegmentMember" xlink:label="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_D101023A48A4BEEE756E41190A55CD4D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_ACE519A18318BFFACC6A41190A54B3D9" xlink:to="loc_tyl_OperatingSegmentsAndCorporateNonSegmentMember_D101023A48A4BEEE756E41190A55CD4D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_59A5DA320741E8C7837041190A551AA8" xlink:to="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_EnterpriseSoftwareMember" xlink:label="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:to="loc_tyl_EnterpriseSoftwareMember_1A7EDD76EACAD6AC181041190A556708" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalAndTaxMember" xlink:label="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3093097733C761D0232F41190A55E290" xlink:to="loc_tyl_AppraisalAndTaxMember_72FAB8314FFCB3B39A4941190A56AEBD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_1C6786DAE04D9BED393841190A510E45" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_438D119CF29D83EA62AF41190A56FAD6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_14DB6E46DA4848E62C5241190A568BBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_7587F5475F3FA01AB41741190A56A878" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_OperatingIncomeLoss_7587F5475F3FA01AB41741190A56A878" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SegmentReportingInformationCapitalExpenditures" xlink:label="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_tyl_SegmentReportingInformationCapitalExpenditures_C83AF4766F9DEA66810941190A577683" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_BB507FF6850BF6EA308D41190A565A54" xlink:to="loc_us-gaap_Assets_89A186E454EE482C55EA41190A57CCB7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SegmentAndRelatedInformationTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_A1CA6AD4A6AAA226EA392FE952BD5CA5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_A1CA6AD4A6AAA226EA392FE952BD5CA5" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_028720219C51684F8F242FE952BDE000" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_A1CA6AD4A6AAA226EA392FE952BD5CA5" xlink:to="loc_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_A75119FACCB84A24A5282FE952BDF905" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensation" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_473E2F4F3630D2321AE42FE9532B66AB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_473E2F4F3630D2321AE42FE9532B66AB" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_8B0CE982053B90917C322FE9532BC3EF" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_338B1B1498992268EF2F2FE9532BF338" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_3D91DC721C38510A64202FE9532BDA38" xlink:to="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_A985160F36ECC34E77BA2FE9532BE0FA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:to="loc_srt_MinimumMember_A985160F36ECC34E77BA2FE9532BE0FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_4E459F1C6078D0E876052FE9532B8BD9" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_04BF167D067DA44434942FE9532BDB23" xlink:to="loc_srt_MaximumMember_4E459F1C6078D0E876052FE9532B8BD9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_1610067BE41D880A71CE2FE9532B36BC" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_856540B1D417C5180E382FE9532B0476" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:to="loc_us-gaap_EmployeeStockOptionMember_856540B1D417C5180E382FE9532B0476" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_07A3B3391527ABF94BB72FE9532B797F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_80CD5A1B03B79981DE152FE9532B948B" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_07A3B3391527ABF94BB72FE9532B797F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_5D4A2B36E39F749254582FE9532B07D9" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4D85A3D6DB3E393A58932FE9532B37DB" xlink:to="loc_us-gaap_EmployeeStockMember_3C9CE1CBC8CE8565B2792FE9532BDBAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0AF39368B6D2D3C7C4DA2FE9532BB84F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_06C61CD6761097327A512FE9532B4B0B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_06C61CD6761097327A512FE9532B4B0B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_0F95413D3857291DFC8D2FE9532B0B79" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_0F95413D3857291DFC8D2FE9532B0B79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_49B44DE1BF59C653BC222FE9532B8884" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_9CB46F0C82925F4837462FE9532BE19D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_0C00CE4156584ACC4EB92FE9532B5D43" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice_4DB2C65703C759C5E01F2FE9532B78F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_0BA37213B8D96DD4C6812FE9532B38BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_DED3DAA600A5083F10562FE9532B9F9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_F9B31AE321B9E93696C22FE9532B0687" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_C474042F72EF34421A852FE9532B57B9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_8045E9399F7B687D422D2FE9532BBFDA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89D135B009027B7B489B2FE9530CA41B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89D135B009027B7B489B2FE9530CA41B" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_B20F64C512B654DEDD602FE9530C70F8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89D135B009027B7B489B2FE9530CA41B" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B4AE1BED5BFC635749A42FE9530C31D7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_AFF9371F33182EEE298C2FE9531BE3EE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_AFF9371F33182EEE298C2FE9531BE3EE" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:to="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_D925CF8027FDEB0E74ED2FE9531BC63F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RestrictedStockUnitandPerformanceStockUnitMember" xlink:label="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_A04490FEDFC21F1AB0F12FE9531B137D" xlink:to="loc_tyl_RestrictedStockUnitandPerformanceStockUnitMember_8C803FE21D80813C76662FE9531B2CE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_EAEA5EBB0A451FF7E0F22FE9531BB450" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_97815910FB13ED27BA6C2FE9531B81CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_21164DBD9530191473772FE9531BA893" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_193B60A7E6C04DDA69622FE9531B94F1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_59147129B02460AE4B922FE9531B6FB8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_663CC36BDF27921F8A762FE9531BAEDE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_94BB7B009BA5291FE7742FE9531BD3E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5682B172A367FFC477A52FE9531B0DD4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_F3DD32EA48AC4CB0C00E2FE9531B2F33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue_E8A4DF4F72DD073114522FE9531B7089" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue_100A476CE836707831382FE9531B0AAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue_ACFC36D85956A5BB35A32FE9531B44F9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward_7EDC5F8601B6A70C4E222FE9531B8121" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue_AE2A2156CBEEAF485D2E2FE9531B1356" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_94B63B7AAFFEB8941BBF2FE9530C09E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_937D41A8E6636773ABCF2FE9530C2D8C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_4892E446696181ED0C4F2FE9530CF34E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_4E7EA7E7F06A14FEE1E22FE9530C072D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_A6033893E7E81F19090D2FE9530CC6A0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_C7D0AB559D3A33F386122FE9530CC8A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_A1EB070B905FF97D41722FE9530C90ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_F22AC31277FD66CEA4572FE9530CCF14" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_8F8B7F2AB2D82BAA5A5B2FE9530C8C8D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_4765FB1814C4EFEB23922FE9530CD7B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_93FCEA17180B069109822FE9530CEB77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_39059049611652E2DF8C2FE9530C090D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_B93537C931C052ECC1292FE9530C2B6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_454F611231CB4302214D2FE9530C1D74" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_D89DDA7849A904A4A6CD2FE9530C06EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_91F4A03B75680F0137D32FE9530C165D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_99FCEBA06A5258B09AEA2FE9530CD013" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_89F22BB20104F9C000092FE9530C76FB" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_37436913089AFD440C9F2FE9530C12CB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_767BD9CD606D3836B85341190B02D384" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_767BD9CD606D3836B85341190B02D384" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435F1D61E4BA5ABD4FDB41190B02F26D" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember" xlink:label="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:to="loc_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember_DBC228CAA081E53D1BB541190B08B98B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_2137705A26758C534FE441190B022154" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_4D3D5E3034280C1D517B41190B080C34" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_2191312A477ACF0440A841190B02DB83" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_6307C79AFA313E8F5B4141190B0988B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_5F33409B7974CA2178D841190B098C95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0BA7F646595F9B2DFCBC41190B08999D" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_1AC1843DD0309E8DD6F841190B09AADB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_170CB5DA484D9D0285F42FE9531B2E41" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_170CB5DA484D9D0285F42FE9531B2E41" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:to="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_AEDAFFBABC7895581E2E2FE9531B92D8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_18C4136C1BB946C78C532FE9531B23B6" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_0969E85F2334508A216C2FE9531B5BD5" xlink:to="loc_us-gaap_EmployeeStockOptionMember_18C4136C1BB946C78C532FE9531B23B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_692A04E23AC3E06288D82FE9531BC69B" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_5335E54D54DF305F94992FE9531BD2A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9ED34FEDD1CF77A863A92FE9531BF275" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate_47A588D3A62C3E2DA9302FE9531BA400" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_C06FB3D76D3D305022DA2FE9531B6877" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate" xlink:label="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_B32A6B93F4B5F624127D2FE9531B1ACA" xlink:to="loc_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate_F4898847E9220AE2F43D2FE9531B47A2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9AD484BE8D10907C64C32FE9532BC9D1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9AD484BE8D10907C64C32FE9532BC9D1" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9586FE5DCF3F2A0E02272FE9532BBB81" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9AD484BE8D10907C64C32FE9532BC9D1" xlink:to="loc_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_88F68A782433FE2E75062FE9532BE2BB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9AD484BE8D10907C64C32FE9532BC9D1" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_F94E51D5896810C54D1B2FE9532BC354" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_9AD484BE8D10907C64C32FE9532BC9D1" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_B2FB87743050C93E9EA32FE9532B7EEB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_C9720AE307A06C18651A2FE953A80D99" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_C9720AE307A06C18651A2FE953A80D99" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_EDA0A225F72ED156EF8C2FE953A82720" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_98DB97A1CAB82246EE942FE9533AFE1C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_98DB97A1CAB82246EE942FE9533AFE1C" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_74708A2BF643D1F730A22FE9533A5D80" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_8BE2B7818510604917142FE9533AE7B7" xlink:to="loc_us-gaap_SubsequentEventMember_2DAFDA2D5AC01318F1342FE9533ACC91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockLineItems" xlink:label="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_D9899163E97BD84BA22D2FE9533A57A1" xlink:to="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_AA36BF5597A8E570429F2FE9533AB46E" xlink:to="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_C9B9EA8F92640F2132652FE9533A8140" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_372A611B5EDE7B0ED5CD2FE95398FC5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_E3F2ACEB81D393A9B3FC2FE953987661" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_3BCFDA54EBABBE86DB342FE95398A062" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement" xlink:label="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement_98ACE1F1CF05C0F1B5C22FE95398936A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_A07CB654306427066D002FE953981BB8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_A07CB654306427066D002FE953981BB8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_0E2F301F4301D2E1D1DE2FE9539865C2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_83CFA399FF3AB8A88C292FE953980592" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement" xlink:label="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9340BC1D6766A6D0CCA92FE95398ED5B" xlink:to="loc_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement_F0D35430198F2DCDD2152FE953986815" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/ShareholdersEquityTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1DCE17B6E8D10019097E2FE95398BF19" xlink:to="loc_us-gaap_ScheduleOfStockholdersEquityTableTextBlock_C7EE3060E7837333374C2FE9539891F2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_85AC4289622E97CCA2AD2FE9527F04F9" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_1BFE692FEBA41BC334212FE9527F2C89" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_889964E2D8FED06675EC2F82CF95B35C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_889964E2D8FED06675EC2F82CF95B35C" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_DCA63F0ACD731407B5E52F82CF96A50C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:type="locator" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesTable" xlink:label="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_BFFC3CD7F1F234C9EE8544D5E468E364" xlink:to="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_07AA89D2275ED72D0CA944D5E46A7CBF" xlink:to="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember" xlink:label="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:to="loc_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_3EEBDAEC051AE21E704D44D5E46BA77F" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AppraisalServicesMember" xlink:label="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_BB2985BFCE336278B4E444D5E46B762C" xlink:to="loc_tyl_AppraisalServicesMember_E62BB45283CDE803F26144D5E46CF3BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesBillingStatusDomain" xlink:label="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_F7E4F328505CCDBA73E044D5E46CCA3E" xlink:to="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledRevenuesMember" xlink:label="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesBillingStatusDomain_94D97D30DEA3AFCD6CEE44D5E46CAC03" xlink:to="loc_us-gaap_UnbilledRevenuesMember_A8F7A1B11BADE323FE8144D5E46C600B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:label="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivableTypeDomain" xlink:label="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_C68C15F92CEA5A59EABC44D5E46CE914" xlink:to="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RetentionReceivableMember" xlink:label="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivableTypeDomain_05C6EC82EA1E69F142B744D5E46D94B7" xlink:to="loc_tyl_RetentionReceivableMember_1CE5A517C4AE4AA83AF244D5E46DEB10" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_17ABCDCBB74A2274159444D5E46DF6DF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:to="loc_us-gaap_EmployeeStockOptionMember_F954C45EA2AB941B4F2B44D5E46E8416" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_DC0FB41FC241B2C3D64844D5E46D5678" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_B6BD1FE58B83AF75D71C44D5E46E7AE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_75D36572923899CC71F944D5E46EB39A" xlink:to="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:to="loc_srt_MinimumMember_8D65802DC204B02A97DB44D5E46E71E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ABED5CC9CCBA642B679C44D5E46E0B21" xlink:to="loc_srt_MaximumMember_48F2B46E859A8795DB5044D5E46FAB5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_F386E221C675FD9CA54D44D5E46F405E" xlink:to="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_051F87FDA65E5BF783CA44D5E46FA1EA" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_0901A4D996750B58587D44D5E46FD058" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_0BC1D9EDE661E271AAC244D5E470673D" xlink:to="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RecordHoldingsPtyLimitedMember" xlink:label="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_5389A954A755CEA2DA2F44D5E470C12B" xlink:to="loc_tyl_RecordHoldingsPtyLimitedMember_1CD13E4F148925A80BC244D5E4707996" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_AccountingPoliciesLineItems" xlink:label="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesTable_D71CA5C1556DFDDE601544D5E46A169B" xlink:to="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_1B682343BB8A9B91AF7B44D5E4700BD2" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_NumberOfWhollyOwnedSubsidiaries" xlink:label="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_NumberOfWhollyOwnedSubsidiaries_40EADA2F98C40DFFD51D44D5E471DD37" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerTypicalContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerTypicalContractTerm_B2CF150AA71FD9E5396E44D5E4716121" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerContractTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerContractTerm_A808668F4B93DC5A3CDF44D5E471773D" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling" xlink:label="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling_B0B49DB04D52A012C91344D5E471A9E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_AccountsReceivableNet_A97C822E11A63557142F44D5E4716C55" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RevenueFromContractWithCustomerPaymentTerm" xlink:label="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RevenueFromContractWithCustomerPaymentTerm_2654AD2F5BC18D064F9244D5E471BB13" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionsAmortizationPeriod" xlink:label="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_SalesCommissionsAmortizationPeriod_97562314AFF3CE72691F44D5E472B45B" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_SalesCommissionRenewalPeriod" xlink:label="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_SalesCommissionRenewalPeriod_7D75B313E74B37E4FE2A44D5E4725DE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost_BB987A65B6702965518B44D5E4726F9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7AD14769C782E07E385B44D5E4726756" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_DD088B507FAEEE1CE05144D5E4721330" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill_643DB0FFBDF54A50C41144D5E472036E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_7DED2F99E82EE3DF1C1A44D5E472DC01" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts" xlink:label="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts_55F8FBB3A37824A9BBF244D5E4732190" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_RemainingEstimatedEconomicLife" xlink:label="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_RemainingEstimatedEconomicLife_69DE8FC6D61CCCD6599044DC32DCCB25" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_8176062250702B47815F44D5E4736583" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities" xlink:label="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_PaymentsToAcquireHeldToMaturitySecurities_B0101709D4DA9870EBC144D5E47310C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue" xlink:label="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="locator" />
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue_9A1A7D3D3476DE63398344D5E473A83E" xlink:type="arc" />
    <link:loc xlink:href="tyl-20191231.xsd#tyl_CostMethodInvestmentOwnershipPercentage" xlink:label="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="locator" />
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_tyl_CostMethodInvestmentOwnershipPercentage_28CE73511E8C48BE8EB644D5E47388D4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="locator" />
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount_591A59549AA5A7EFAD5444D5E4733EBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="locator" />
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_tyl_AccountingPoliciesLineItems_2641C858A313FB6EC37C44D5E4707048" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9F5C3CB4178D2B51290E44D5E473066C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_13AC1037D9CE3F53B98A5A825747080B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_13AC1037D9CE3F53B98A5A825747080B" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_5E9CF84C6396AE0680615A82574894D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/netLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_780B26E0949475E735605A825748C19B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_7B77C1D604D18414ACEF5A82574814F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_142D04A2169DE10451755A825747412D" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_BE5A80B9BE544A0E9EFA5A8257498FA6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_13AC1037D9CE3F53B98A5A825747080B" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_E362D30066F58F7C73255A825749D15A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_7F1AD1664D8349FDB5CB2FE954548293" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_39F5BB1D62A7B5A964872FE954544E60" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_084FA83025FC83448FA32FE954543215" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_UseOfEstimates_E5E44071682F487C6FD52FE954546DFF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_E12B3CA101E60F77647D2FE9545476EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_AB57E830C37B135F32C42FE95454CE76" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_F1D399229206364167092FE95454AF88" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_9B7DCF3D2C5140B3FBC62FE95454818F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_D7110D85A66161915C3F2FE9545466CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_399224FFBD75E99C44152FE954547E46" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy" xlink:label="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy_D1E97794200510612C2A2FE95454D748" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_CEC700E0E22921B273A22FFFCE0CAFC0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_A0CD3A07147A909703862FE9545434AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_F90BC3FEFABFC08E55442FE954546881" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_606B89C396D7BDF0BD702FE9545480B6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies" xlink:label="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies_06E47A6D9F26CF2762432FE95454C655" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_81E39E9E314E111CFB2D2FE95454FFA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_CB28531EF1A4F0AB79B62FE9545410AF" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_4EA5CA67F8C50471982F2FE954541E54" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_C55336CD0AF8035AF3872F82CF72F350" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_C55336CD0AF8035AF3872F82CF72F350" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_2B5543AF2074C05A0ACF2F82CF72683F" xlink:to="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_33A923FAD4702D9B2C062F82CF7392C0" xlink:to="loc_us-gaap_AccountingStandardsUpdate201602Member_3BA9D9D4D23229D6A9572F82CF73344C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_C7F679026D77BD5134AB2F82CF723EDB" xlink:to="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_E04E670151E48AEFD59C2F82CF73E360" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_E04E670151E48AEFD59C2F82CF73E360" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_C054CA8C7829C11994642F82CF73181E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_97B953495B978DBE76E02F82CF743FE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="locator" />
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_A67C05582FEF73F33AE12F82CF739DED" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_32DA19F642400C1869222F82CF74E55E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_EEF0242F206B20B3D8952F82CF8B558D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_EEF0242F206B20B3D8952F82CF8B558D" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_EB662212D7A33C0B4B9A2F82CF8C295E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_EEF0242F206B20B3D8952F82CF8B558D" xlink:to="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_A522293D60AD3281BB5D2F82CF8CDB44" xlink:type="arc" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>11
<FILENAME>chart-0712ce3e0aa05243830.jpg
<TEXT>
begin 644 chart-0712ce3e0aa05243830.jpg
M_]C_X  02D9)1@ ! 0   0 !  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" '2 JH# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#]HO\ @DG_
M ,$E/^"9GQ>_X)E?L)?$WXG?L*?LO>._B%XY_9>^$GB?QEXR\4?"'PKJWB/Q
M/XBUCPS;7FJ:WK>JW-FUUJ.IW]S*\UU>7+R33.<L^T*J_HA_PY,_X)(_](Z/
MV0?_  R/@_\ ^0J/^")G_*)'_@G1_P!F@_!'_P!0^RK]1J /RY_X<F?\$D?^
MD='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_A
MR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH
M_+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*O
MU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#
M_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_
M9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_
M $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/
M^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(
M5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P
M?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L
M@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D
M?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9
M_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /
MRY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D
M*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX
M/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_
M ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_T
MCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,
M_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\
MA4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?
M!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^
MR#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^
MD='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_A
MR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH
M_+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*O
MU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#
M_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_
M9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_
M $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/
M^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(
M5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P
M?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L
M@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D
M?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9
M_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /
MRY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,_P""2/\ TCH_9!_\,CX/_P#D
M*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\A4?\.3/^"2/_ $CH_9!_\,CX
M/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?!_\ \A4?\.3/^"2/_2.C]D'_
M ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^R#_X9'P?_P#(5'_#DS_@DC_T
MCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^D='[(/\ X9'P?_\ (5'_  Y,
M_P""2/\ TCH_9!_\,CX/_P#D*OU&HH _+G_AR9_P21_Z1T?L@_\ AD?!_P#\
MA4?\.3/^"2/_ $CH_9!_\,CX/_\ D*OU&HH _+G_ (<F?\$D?^D='[(/_AD?
M!_\ \A4?\.3/^"2/_2.C]D'_ ,,CX/\ _D*OU&HH _+G_AR9_P $D?\ I'1^
MR#_X9'P?_P#(5'_#DS_@DC_TCH_9!_\ #(^#_P#Y"K]1J* /RY_X<F?\$D?^
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
M?6L;O9ZG)J$-Y(VFS:?'J<,]G%_-U^QS\1Y?^"9?_!?K4?AOJ6H?'!?V;O\
M@KWX&T>_E\5?'KX9_%SX4W>I_MM>%$DNO$>LV%E\7?#_ (>U?4H_&'Q#U7Q+
M%9Q:3:W.F:5#\>_!OA>&>&S\,VEO#U7[27BW]H#P)_P=#_%GQM^S'\-/!?QD
M^+WA3_@D[?\ B+P]\*?''B;7/!UK\0AI"6U^_A'0?$.AZ)K[Z?XOUV>"VT[P
MV-5LH-#N=0N%M-3U32(IQJ5L ?U!_LW?MZ?LR_M?>!/B7XY_9M\<:A\4'^#O
MB;6? _Q0\!6WA#Q7X0^+?@/QUH+7<>I>"_%OPI^(ND^#O''AWQ&LUAJ%O96.
ML:191ZK<:??0:5<7DUI<1Q>.?LV_\%:/V*/VIOV>/C/^UG\.?B%K^D?LX? "
M\\2:;\4_BY\3/ 7BGX9>&O#VJ^#]$TOQ#XITJ*W\6V5CKVKW^B:5K>D/<V^D
M:/>FXOM2L]&T]KW6KB/3F_(C_@V!_P"%._&/X??MQ?MT1>-=6U#]L;]K?]IK
MQ+KO[9WPEO\ 0QX+TSX ^-](\3^/?$?AGX>^&/!UQJ^M:U)X<N;;QSKFK:=X
MSU^^.HZX4N/#]U8:1K'A#7K23X*_X(1? 'X/?M6?\$!/VZ/V9OCGXVOOAO\
M#_X]_MX_$OX3MXZTU8GN_#'C?QH/V9-(^$VIQP7#PVM[L^*T_@R$Z5>W5C9:
MT)CH]U?V,5^UW  ?UB>"OVZ?A/XJ^(/PF^%^O>#?CK\*_&?Q[EUS_A2FG?%C
MX*>-_!UE\1;7PUX*UGXBZY+8:\;/4M \,ZGIW@O0K_7[GP;\0=3\&_$!+.)Q
M_P (B9K>]BM,_P")/_!0/X"^!_CS??LL^%(OB#\=?VD="\*6WCOQE\'/@-X(
MO?B#XC^'/@R^:V33M?\ B?KKWFA_#_X;)K'VVSD\/Z+XT\9Z-XG\26]W;76@
M:%J5K/#._P#/9^RY\=O^"L'_  37_; _8_\ V$/^"GFD^!OVS?V9?C9\5(OA
M1^R9^VYX0WK\1/!7Q(L?"&OZ?X3TKQY)<16.L7VI/X1O]2TC7+#Q]I4OBP:-
MJWB'6-#^*7Q$T[PWK&GNS_@V9A\76O[6G_!=B#X[9_X:37]M/1)/B<=;^T?V
M])I$NO?'*30IK?\ M)GN3X3EO7OY?#AMV:S.E2:68&-D=-) /Z-_@/\ MS?L
M_P#[2_A/XM:]\&=:\3>*?%/P&US5/"7QF^#-YX+\1>$_CO\ #3QKI$=U)/X/
M\6_"/QC::!XMTW6M0%C>_P#"-2"UET7QBMK-+X1UC6XE,E><_L-_\%0/V.?^
M"B_A_P")^L_LH_$?4/'.I_!S7(O#OQ$\#Z[X0\2?#WXA>&]3N[:>?2_MW@WQ
MW9:!JT>GZO<6>I:5INL.B:3+K>D:QH\]Y;7^EWD,7X._LTP>);C_ (.Z_P!O
MJ[^%7VL_#>R_8U^'%M^T9+I9C_X1?_A-Y_ 7P$_X0VWUGRC]C/BAKZ&UDTU)
M -7Q:^*VB_T==5S\]_MC?L;?'/\ X)Z67[+G_!>;_@F]X?$WBCPA\!_A?#_P
M4+_9XT>*>UT#XZ_!^X\+>&SXP^)%QI-A%<%]02PLX+CXE7EKI]U=Z3J>F>'?
MC79V7]K>%?&5WJX!_8+\!/CGX4_:)^'L/Q,\$Z3XTTCPY<>(O%_ABWA\>>$]
M0\%:[+J7@7Q/JW@SQ(W_  C^KL-4@L[3Q/H6LZ7;W=U!!%J1T^2^T[[5I<]E
M?77BOQQ_;V_9_P#@?\8_!O[-ESJ'BWXG?M,>/_#NH>,_"_[/?P8\(:G\1OB@
M_@?2F>+4/'?B>QT]K/PY\.? \5PALK7Q=\3/$W@[0M7U+_B5Z)>ZEJ -LO,?
M\$R/C%X=_:&_8=^"7QZ\(Z=K6D>%OC5:?$#XK^'M(U]+./Q!I.C?$'XL_$#Q
M5I^EZNNGW-WIYU;3[75([.]DL;J:RDNH9);61H'2OP&_X)*0>,;;_@XU_P""
MZJ?'(7)^*TVG>#+KX;-K:W@U!_V>I?&NF/X,.A&[)5O#4?@9O@Y%(;8FT$\=
MDD(4I*J@']&?[/\ ^W'\ OVC_&7Q8^$_@C6/$>A?'?X%/8)\7_V?OB3X3UCX
M<?&;P+'K%G#J&@:K>>#O%,=DNN^$_$=G=V,WAWQ_X/U/Q)X UH7UHECXHEEF
M5#\S_#?_ (+ _LP?&7QU\=OAI\'_  /^U+\4O'/[,?C2[^'?Q[\.>!?V9?B;
MKM]\-/&MGJ/B+2F\/:R8+%8+^^N;[PGXBAT__A'Y=8AU+^RY7L9;A9;4S_C/
M\?(/$5W_ ,'?G[&LGP3%\6TW]@/69?VGWT<*=-C\!R:=^T)#I">+O(#1^1)J
M]W\(5LA?@.=5D\'- =RZ<5^0/^">&F?ME:E^V?\ \'%L7[(VI?#"RF7_ (*4
M_#=_BE:>*])\5W?Q!U'X;1_M'?&^?QY;?"/5=&U.+P]I7BZ7P!%XNALCXFT3
M5X+J[FM8K.;2KC9?Q@']I7P!^.O@+]I3X1>#?C9\,W\1GP5XXM=2N=)B\7^$
M_$'@7Q39RZ-KVK>&=7TWQ!X.\56.F^(_#FLZ7KNB:GIM_I&L6%I?VES:O'-
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
M'_&+6_A/^TCHOB_X(?''P;\.[?\ 8I\>:I<>&?A#I?A?Q-XQ\*V'PYO+O5?
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
M$D$=SHGCW3KGP]\0='U*67Q/J5AIW]1U !1110 4444 %%%% #)/NC_?C_\
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
MNEVMHFRQ5[9_T'HH ^./A'^P_P#"7X1?&NX_:&M_%7QV^(OQ:?X;:M\)-/\
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH 9)]T?[\
M?_HQ:_PQ?^"@G_)^G[;G_9W?[2?_ *N7QI7^YU)]T?[\?_HQ:_PQ?^"@G_)^
MG[;G_9W?[2?_ *N7QI0!_K[_ /!$S_E$C_P3H_[-!^"/_J'V5?J-7Y<_\$3/
M^42/_!.C_LT'X(_^H?95^HU !7YA_P#!0KX ^(_CA>?#?4/!7PL^(D?Q<^&%
MQ>^)?@#^TS\%?&/@3PC\3_@U\0]5TKQ/8W^D7^H^+M2LD7X6^)KBR\#2_$3P
M_K>A_$/X=>/- MM1T/QCX(OKVP\._:OT\HH _&K]HG]D;]N#X@>//V9O']G\
M6OA1XMG\._M4_LF_%#XG>'[;X/W%F?!7A?X2^"]=L/'K>'_%^K?'#PZWB#P4
M/&&N>,?$.C>';;P+8^+4NOB )A-?KH4D$_E=O_P3;^+GB3X1_"3]C_59F\+?
M#+X%^._^"B?B8?&F?7K'5[_QWX?_ &M/AW^U9\+/A/!X>TZQU)?%-EXG\.^'
M?VM]8UKXCOX@M-'M;'7_ (;I;:!J?B"T\2V-[;?O310!^8'[*_[.7Q@T7XT_
M!CXM?$_P_;>!8O@/^P-X/_8_70TU;1-=/C'Q_/XR\'>)OB1XRT.\T34K\)\.
M[&'X5>#;;P)=:Y#H?BG6&\1^('UKPIX?_LJV%]^GQZ'Z&EI&Z'Z'^5 'XT?\
M$FOB'\0?C-KW_!5(_%7Q[XV\?#X7_P#!7;]K+X1_#E/%'BSQ!JL7@?X8>$O#
M/PAN?#/@#PM#/J)BT3PEH-QK&J3Z5H=@D-A92ZA=R0PJT[D_KS_PC.D_\\[O
M_P &NK__ "?7XK?\$3?^0[_P6-_[3=?MI_\ J)? ^OW(H P/^$9TG_GG=_\
M@UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H
M_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\
MGG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_
M /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,
M#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG
M=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__
M )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G
M2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X
M-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZW
MZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/^$9T
MG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#
M75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_
M (1G2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">
M=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW?_@UU?\
M^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/
M^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W
M_P"#75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\
MD^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)
M_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW?_@U
MU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?H
MH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?
M^>=W_P"#75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=
M7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\
MA&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW
M?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_ (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y
M/K?HH P/^$9TG_GG=_\ @UU?_P"3Z/\ A&=)_P">=W_X-=7_ /D^M^B@# _X
M1G2?^>=W_P"#75__ )/H_P"$9TG_ )YW?_@UU?\ ^3ZWZ* ,#_A&=)_YYW?_
M (-=7_\ D^C_ (1G2?\ GG=_^#75_P#Y/K?HH P/^$9TG_GG=_\ @UU?_P"3
MZ/\ A&=)_P">=W_X-=7_ /D^M^B@# _X1G2?^>=W_P"#75__ )/H_P"$9TG_
M )YW?_@UU?\ ^3ZWZ* ,$>&M*!!$=WD$$?\ $TU<\@Y&0;\@CU!!!Z$$5O44
M4 %%%% #)/NC_?C_ /1BU_AB_P#!03_D_3]MS_L[O]I/_P!7+XTK_<ZD^Z/]
M^/\ ]&+7^&+_ ,%!/^3]/VW/^SN_VD__ %<OC2@#_7W_ .")G_*)'_@G1_V:
M#\$?_4/LJ_4:ORY_X(F?\HD?^"='_9H/P1_]0^RK]1J "BBB@ HHHH *1NA^
MA_E2TC=#]#_*@#\./^")O_(=_P""QO\ VFZ_;3_]1+X'U^Y%?AO_ ,$3?^0[
M_P %C?\ M-U^VG_ZB7P/K]R* "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@!DGW1_OQ_^C%K_  Q?
M^"@G_)^G[;G_ &=W^TG_ .KE\:5_N=2?='^_'_Z,6O\ #%_X*"?\GZ?MN?\
M9W?[2?\ ZN7QI0!_K[_\$3/^42/_  3H_P"S0?@C_P"H?95^HU?ES_P1,_Y1
M(_\ !.C_ +-!^"/_ *A]E7ZC4 %%%% !1110 4C=#]#_ "I:1NA^A_E0!^''
M_!$W_D._\%C?^TW7[:?_ *B7P/K]R*_#?_@B;_R'?^"QO_:;K]M/_P!1+X'U
M^Y% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 R3[H_WX_\ T8M?X8O_  4$_P"3]/VW/^SN_P!I
M/_U<OC2O]SJ3[H_WX_\ T8M?X8O_  4$_P"3]/VW/^SN_P!I/_U<OC2@#_7W
M_P"")G_*)'_@G1_V:#\$?_4/LJ_4:ORY_P"")G_*)'_@G1_V:#\$?_4/LJ_4
M:@ HHKGO$'B[PMX4_LG_ (2?Q'H?AW^W]7MO#^B'7-6L-)&KZ[>QS2V>C:8;
M^XMQ?:I=16T\EO86IENIDAD:.)@A( .AHK&F\1:#;ZW9^&I]:TF'Q%J-C=:I
M8:#+J5E'K5[IMC)%#>ZA::4\ZZA<V-I-/#%=7D%M);6\LL<<TL;R(#-!K6CW
M6J7VB6VJ:=/K&F0VESJ6E0WUK+J6GV]^)#8SWUA',UW:0W@BE-I+<0Q1W(CD
M,#2!&( -.D;H?H?Y5FZ;K6D:P;X:3JFG:F=+O[C2M2&GWMM>G3]4M=ANM-OO
MLTLOV/4+821FXLKCRKJ .GFQ)N7.DW0_0_RH _#C_@B;_P AW_@L;_VFZ_;3
M_P#42^!]?N17X;_\$3?^0[_P6-_[3=?MI_\ J)? ^OW(H **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** &2?='^_'_ .C%K_#%_P""@G_)^G[;G_9W?[2?_JY?&E?[G4GW1_OQ_P#H
MQ:_PQ?\ @H)_R?I^VY_V=W^TG_ZN7QI0!_K[_P#!$S_E$C_P3H_[-!^"/_J'
MV5?J-7Y<_P#!$S_E$C_P3H_[-!^"/_J'V5?J-0 5^,G_  4MT<^&OB7X ^/?
M@[Q7\(O''B[X7?#CQ+IOQ0_9(^/FM:9HO@?XT_ /7YO$'B#7M0\#^*]2M=1D
M^%GQ4M+_ ,%ZKH6C>+8M"\3>$O&$E]H_P_\ B1IFC6-]X8\9^&_V;KG==\(^
M%O%$VBW/B3PWH6OW'AS58-=\/S:UI&GZI+HFM6RNEMJ^D27UM</IVI0)+(L-
M]9F&YC#L$E&: /R/_:"\+_#KQU\1OV"?CM\+?@M\(_$GC/P%\=_V<;GQWH'B
M>6X\)?MD?#/P9\5/!4O@KPL-.UC0;G5==T6P^%OA?XBW'C_XO?";QHS>'O&G
MP^\.>+U2^M[FW^TZO\(Z*W[0X^$_P#B^&8U&3]OY?C%_P6.D^-+^&WNVUZ.X
M'P\_:X3P./'0R-2_X1*7XQ?\,4CX:_VBO]G'38OA?_PC&-'72J_IDA\,^'+?
M7;OQ1!H.C0^)=0M+:POO$,6E6$>N7ME9AA:6=YJZ6ZZC=6ML'<6]O/<R0PAV
M$:+N.;4&C:3:ZE?ZS;:9I]OJVJ16D&I:G!96L6HZA#8+(MC#?7T<2W5Y%9++
M*MI'<S2I:K(ZP+&'8$ _%_\ 8+=&^/W[/2_";[0WPLB_X)0?!-?C9)I#,=%;
MXQMX^T,_"J/QED_:/^%JQZ(/C_)XA&MJOBSR9YCXDS,UKC]L6Z'Z'^59VG:/
MI.D?;?[*TS3]-_M*_N-5U'[!9VUG]OU.\*F[U&]^S11?:[^Z*(;F]N/,NIRB
M^;*^U<:+=#]#_*@#\)_^"+$>K-XA_P""QAL;O3H(O^'W'[:(*7>GW-U(7_X1
M/X);F$D.IV:A2-@5/*8@AB7.0J_M]Y/B/_H(Z)_X)K__ .7M?BE_P1-_Y#O_
M  6-_P"TW7[:?_J)? ^OW(H Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P3
M7_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH
MQ/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P
M37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VC
MR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U
M_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,
M3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3
M_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1
M_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P3
M7_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH
MQ/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P
M37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VC
MR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U
M_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,
M3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3
M_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1
M_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P3
M7_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH
MQ/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P
M37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VC
MR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U
M_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,
M3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3
M_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1
M_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P3
M7_\ \O:VZ* ,3R?$?_01T3_P37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH
MQ/)\1_\ 01T3_P $U_\ _+VCR?$?_01T3_P37_\ \O:VZ* ,3R?$?_01T3_P
M37__ ,O:/)\1_P#01T3_ ,$U_P#_ "]K;HH Q/)\1_\ 01T3_P $U_\ _+VC
MR?$?_01T3_P37_\ \O:VZ* ,40^(LC.H:*1D9 T>^!(SR 3KA )&<$@@'D@]
M*VJ0D#DD >I.*4$'D'(]10 4444 ,D^Z/]^/_P!&+7^&+_P4$_Y/T_;<_P"S
MN_VD_P#U<OC2O]SJ3[H_WX__ $8M?X8O_!03_D_3]MS_ +.[_:3_ /5R^-*
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
MMM0IQ44Y2;E.<GO.I4DW.I5FY5*DW*=24I2;91117I'0%%%% #)/NC_?C_\
M1BU_AB_\%!/^3]/VW/\ L[O]I/\ ]7+XTK_<ZD^Z/]^/_P!&+7^&+_P4$_Y/
MT_;<_P"SN_VD_P#U<OC2@#_7W_X(F?\ *)'_ ()T?]F@_!'_ -0^RK]1J_+G
M_@B9_P HD?\ @G1_V:#\$?\ U#[*OU&H ***,@=3CM^/I0 449&<9&?3O^5&
M1TSR.H],]* "D;H?H?Y4M(W0_0_RH _#C_@B;_R'?^"QO_:;K]M/_P!1+X'U
M^Y%?AO\ \$3?^0[_ ,%C?^TW7[:?_J)? ^OW(H **** "BBB@ HHHH ****
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
M\(>'+O6K^>%;B2^U[5Y/L#^)==UPZ-HIT_Z);H?H?Y4 ?A-_P19U"6U\0_\
M!8Q$TS4;T'_@MQ^VBWF6<=HT8+>$_@D"A\^]MWWKM!;"%0&7YB20/V\_MJX_
MZ &N?]^-._\ EI7XJ_\ !$W_ )#O_!8W_M-U^VG_ .HE\#Z_<B@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HH P?[:N/^@!KG_?C3O\ Y:4?VU<?
M] #7/^_&G?\ RTK>HH P?[:N/^@!KG_?C3O_ ):4?VU<?] #7/\ OQIW_P M
M*WJ* ,'^VKC_ * &N?\ ?C3O_EI1_;5Q_P! #7/^_&G?_+2MZB@#!_MJX_Z
M&N?]^-._^6E']M7'_0 US_OQIW_RTK>HZ=: ,'^VKC_H :Y_WXT[_P"6E!UJ
MX'_, US_ +\:>?T&J9_SFN$^(OQG\&?#FXL=%O9-1\1>-M:B>7PW\._!]@_B
M#QUXA5&*&>QT.V=?L6EQN"MUXBUVYTCPUI^"U]J]N!@^:CX<_$_XRYNOC3JL
MG@;P-<#]U\%? .NW N=3MFVYA^*/Q'TXVFH:WYJM)'=^$_!+:+X:0%K74-9\
M56[%S\=F7&%&GC:^2</8&KQ/Q#0<88K X*M"AEV3SJ0C.G+B3.Y0K83)HN%2
ME6^I1IXW/J^%J?6LNR/,*-.JX>5B,TA&M/!X&C+,<=!I5*-&:A0PK:33S#&-
M2I816E&7L5&MC9TY>TH8.O!2:LZW^T'=Z[J6J^$/@?X*U#XH^,=)N&L-<U+[
M9:Z5\,_!=Z#LFC\5>/(9=0LKW5+$L)+CPCX1CUWQ.2C07EOI"DW4=?PY\(I+
MS7+'QS\99->^+7CO3;C[;HB7NDZ=IGPY\#7))*M\/_ #ZW>V5A>0@K&GBKQ%
M/KWC.41AEUFRB<V<?T5H'A[0O"ND:?X?\-:-I>@:'I5NMIIFCZ-8VVF:9I]L
MA)6"SL;.*&VMH@225BC4,Q+-N8ECL5S4.$*V:8BCF7&V-I9_BJ-6GB<'DE*C
M*APGE%>E*-2C4PV559U9YOC\/.%*I#-\]JXVM1Q='Z[DN$R!5JF$40RN6(G#
M$9M5CC:L)1J4L)"+IY9A9Q:E"5/#2E)XJO3DHR6*QLJLXU8^UPE+ J;I+ &L
MW Z:!KG_ 'YT_GW)_M3)/N>:7^VKC_H :Y_WXT[_ .6E;U%?='L&#_;5Q_T
M-<_[\:=_\M*/[:N/^@!KG_?C3O\ Y:5O44 8/]M7'_0 US_OQIW_ ,M*/[:N
M/^@!KG_?C3O_ ):5O51U'4]-TBSGU'5;^RTS3[9/,N+[4+J"RLX$Z%YKJYDB
M@B4=V>11[UG6K4</2J5Z]6G1HTH3JU:M6<:=.G3IQ<IU*DYM1A"$4Y2E)J,4
MFVTD73ISJSC3I0E4J3DH0A"+E.<I-1C&,8IN4I-I))-MM):F?_;5Q_T -<_[
M\:=_\M*/[:N/^@!KG_?C3O\ Y:5YW)\:_#6H226W@72_$WQ,NDE,'F>"M(>Z
MT%9L':)O&6JRZ5X.C0$?O"FN3R(,D1.V%,>SXW^)P=TG@[X7:?(@($2S_$/Q
M6#GG]Y*- \*Z9,!T @\31*PSF1<[OB'XAY#BFZ?#=+,^-*S;C#_5/!?VCELY
MQ=JE&7$U>K@^$<-B*7V\-CN(,+73]U4W-J+]]<,9C1M+-9X3(*>CD\ZK_5<5
M&,K<LUE-.%?.ZU*5_=JX?+*U-K5R4=56^,GQB3X5?#W7?%T^BWJWT$*V'A^V
MU);6.TO_ !%?AXM*M)S;:A)<&W$JO=7IA7>EC:W+!XVVM7;?#;QUIGQ*\#^&
M_&VDLOV77M-ANI( 07LKY,P:EITW)(FT_4(KBTD!ZF(.,JP)^&?VA_V</C1X
M^US2;7PUJVJ>+=#TVR-U=:IXW\<V\4E[KUZ[K</8>&K'3[+0-$M+&T1+:%M.
MTRUFN#<7(F>2-(RWK7[)?PV^+OPETWQ'X2\>V.DIX;N;F/6] N-/URWU*6RU
M2;9;ZM9/ EO%(MM?1QVU[&X8I'=0W6Y=UV"/P+AWQ6\8\Q^D;C>&<Y\,.+LE
M\)JW#[R3!9O5R7&8K+L/Q5@76S9Y]BL[HX18..#QU&K6X<J1PV(Q>7?6\+@,
M5A<=7PM2IBJOZ1FG!O V%\+:&;8'B[),PXTAF2S#$8*&/H4<54R?$*E@_P"S
MJ.7U*[KO$8:<:>9Q=:E1Q7L:V)HUL/2K1C1C]BT445_7!^*C)/NC_?C_ /1B
MU_AB_P#!03_D_3]MS_L[O]I/_P!7+XTK_<ZD^Z/]^/\ ]&+7^&+_ ,%!/^3]
M/VW/^SN_VD__ %<OC2@#_7W_ .")G_*)'_@G1_V:#\$?_4/LJ_4:ORY_X(F?
M\HD?^"='_9H/P1_]0^RK]1J "BBB@ HHHH *1NA^A_E2TC=#]#_*@#\./^")
MO_(=_P""QO\ VFZ_;3_]1+X'U^Y%?AO_ ,$3?^0[_P %C?\ M-U^VG_ZB7P/
MK]R* "BBB@ HHHH **** "BBB@ HHHH **** "BOG#XW?M6_!;]GW4M$T7XC
M>)+JTUO7H/MUIH^CZ-J.O:C!I0G>V.KW]OI\3_8M/:YBE@@DF<3WDL-PME;W
M)MKCR_</#'BGP]XS\/:-XL\+:O9:WX=\0Z=;:KHVK6,OF6M_87<8D@GB+!)%
MRI*R12I'/!*LD$\44T<D:_.X#B[A;-<\S?AG+>(LEQ_$600H3SO(\)F6$Q&:
MY5#$J,J$\?@:566)PT:BG"SJTXV=2FI6=2"EPT<TRW$XS%9=A\?A*^/P2A+&
M8.EB*53$X:-1)P=>A&3J4U)2C9RBOBC>W,K[]%%%?1'<%%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444A(&,D#/3) S]*
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
MQ2%KE9[7]AU&T >@Y/<GN3[GJ223[U^5^&^.\7_$C*\SK>*V03\+</@\ZQF
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
MC?6NNW/B&UTJTN+Z_N?"6AZ[XGLK:TM(VEN;B?5=&TZ[T>VBAB5G>6YU"&)
M,E\5\-? S]JOQ5K?Q<\:6%]I5UX@MOB7JQN_!V@MJ^G:6-$OM.MC;:=I<5[J
M]S;V,-O>>'[&!+N.(2W%SJ]J)K6VGGO95?\ $^,_I(^%G!?$O G#&)S_  F<
M8WCK-\3E6'GP]6AGJROV.%J?5JV-H90L=BJE3,<WGEV28'!X>C/$U\5CW5C!
MTL)7M^D9#X5<8Y_E/$6;T<LK8+#\.X*CC*D<SIRRYXQ5*T/:0H5<;]7HQCAL
M#'%9AB*]6I&E3HX90E)3KTC]1J*\IC\2?%FY8"'X:^&K%23AM9^)(1L*!G,>
MC^#=8 \QCB$K,^5!:98CA#5NK[XRQ0R7-V?A)X>M(D4S7-YJ/BW5H;=2<O+)
M)+:>&("(Q\@B::(2M^\-Q""(Q^C2XYRZ4.?"Y-Q?BK)MJ7"'$.5I**3;E5S[
M+\IP\59M\TZT8*SYI+2_RCR&O3N\3F.18:"7,YO/<KQ:2ZMQR_%8RIHM7[E^
MVEVO8**^1M9^-=I82_8[[]HKX-QZEEU.D>"O!FI>-];25LJD?]EZ3XZUW4I=
M@(=?^)7&[2D(04^1\R+QW\0]7F\K0)?VA_%2$9CN='^#W@#X9Z=*%3<C#4/C
M#!HTRJSD&66&VN%DCPEO;[@SM\M5\8LHC7>&P_#^>9EB5-0>%RG,^!<VS"+>
MW-E&6\9XK.59W3C_ &>YJS7+?0\V3X=CS1_UTX;JUH.TL+A8<0X[%7_E5'!9
M!B)2>]N5N-[+FU/LO(]1^8HR.O7Z<_RKXU7PI^T9XA60I_:GAR)G(2;QE\:8
MY;^-)&^=I-!^$_PTTVS+E1S#%XUC6$82RN;<DR+.?V;?B)KK(_BWX]^*[6%\
MM+9>"AXCLWC<@*-FJ>./&GCAV:*,%(KB+2[.4;F9E)-*/B'QIF"4\A\*,_QE
M-VN\[S'#<)U*;;Y7[6CG6$IU))/5O"+%V@U*S?ND.ODBMR8C/<<M.:6 R"-"
M*O;:/$>:<.5I6UNXT6KZ*Z]Y_81=5!9C@#J3D ?4G@?C7(^(/B%X#\)Q-/XI
M\:^$O#<".8WGU_Q)HNCQ(Z\LC/J%];@.!R4^][5\^:?^Q=\%4)?Q,OCWX@S8
M&7\;_$CQAJ-J^&WLLFC:;JFCZ"\3R9E:!M,:'S#N$8KUSP_\"?@OX51$\._"
MCX=Z0Z #[19^#M 6\D*D$--?26$M[/)N56,D]Q)(S*&9R0#7M8+,/%7'4Y/&
M<+<#\/N4;TIOC/.N(Z].32TQ. H\&9%A_=>ZH9U53CM-/;S\3*O*45@:?+2D
MXWJYBH4L12CS>]S8'!UL90J2Y;M1CFL%?3GZGF6K_MF_LZ:8\EO8_$"/Q;>(
M2JVG@/0?$GC=I67[RI=>'=)O=,&T<NTE_''&"&D=5()YS_AK6;6Q'_P@_P '
M/B%JOF#Y;GQ-#'X<LWWL%A*V^AVWC?7\3D[H5;0T>6,%HE<_+7U];V5I:KMM
MK:"W7);;!#'"N6QN(6)4 +;1N.,G R35C 'K^9_QKS\5P]XO8^JW+Q,X7R?#
MW?)2R+PVJK$QB^5J-7&9]QOGU"M*+NG.GEV$4E_R[CN==*E@Y0MCJV<2JK:I
ME.)RK+J<]=YT,RR3B&:TTM#$Q/CB3XG?'S7#+]ET33/"5O)O5(]+^$7Q9^(-
M\B@8+1ZCXHD^#NC[E/ 9M/N0TF-EM-"KR5"-#^+.O0?\3_6_VD]4)=0;/06^
M!_PDTD[BK/&;C2M2N/%T4>W_ );1Z_)(IQ$D@?S&'V:=O4X^IQ_6C( XZ?[(
M)_D#7)+PNS?'RY\]\1>*\;4G%QK++L14R[!8GFLY*MDV*Q.;9'**:3C2CEL:
M5O=E3DGIK['AZ.^48S'R;?-_:_$6<5:=1-Q?+4PN3U\CP4D]FEA4K/1):'QM
M!\&M/N[B.[U/]GRU\67B?,+SXQ?&34/'DY<M\LDD&MGQ[9Q2Y_>7"6L20HH
M@:9L1K\/_MO:;X9U.]\'_#G4OAO\-_"VH>&(KC7@_P /[JX:ZTRTUF+[-#H]
MQ=V_AKPG#;Q7_P!E75I+);6\&V'3IV:W=AYWZ^>)?B!X$\&1-/XP\:>$O"L"
MKN>;Q)XDT70HD4ASN>35;VT15Q'(<DXQ&_\ <;'X4?\ !0+]O7X8_"7XE^%T
M^#OP^_9H^/J>*_#M_K/C#Q5J4DWBVYL]=L]432K+3VU?PKKD=D6.EP)(T$[S
M7$2)"%,4'EHWF\3?0<\4_I"<,8GPP\%L9@<'FG$^(I5,US3B;A_A/(\EEDV4
M1GF^)I?VMPUP/EE99A7Q>"P*I3Q..A&</;1CSUYTK>1F/C)]'3P<HXSB;Q=X
M-X6Q7#F%I4Z%?(LKP,LZQV.QN.Q&'PN%GB<DS;-\9'&87#RJ3Q,FL)5E2KTZ
M.(O!4I3/T:_9.\<>)-2^#N@Z#X \"_#V+2_ 4$?A>ZTB/Q=K7AS4$N[:,7DF
MISV/_"(ZU:&7Q)]I?53=-J4@GU"6_-S,91((OI,^+OB="VVZ^$9N%#8+Z-X^
M\-W@(*Y1D76+;P\2%/RSA_+*'F$7*\U^<W[#?[;7P-\3_!U/'7C?0O ?P;\=
M:YKVNZ7K&A?#_P $^.UT>ZTO0=0DBT&Z-W#I.N)>RM;W4[RL-1F6VN))H0EO
M)YL"_:D?[9O[+S*?.^-'@ZPE#%7M-5GU#1[^(CH)].U;3[*_@WJ0\9FMHQ+&
MR2QEXW5S^F<*_1E\?_#GA[*N N-LVXUK<3<&4GPSFF*X+X;R3'\,8IY+5GE^
M$J95BL?P%BJM2A/ T,-SRA7J4)5E5>%G]7]G:5XZ^!?$\:/$/!;X(RWA;.L+
MA<RR/*\YSJ>49EEN"Q>&H588+$99A.)L-2P7U:4I4J.%^KTG0H*G3J4HRC.)
MZ._Q#UVW4-?_  @^)$)V%F-FO@;6%RG^M"_V;XUFF8+G='^X$EPO^IB:3]W1
M'\5]*1A]N\'?$[2_F*LT_P -O%-XB@KE&,NB6.K1D2'Y0%9GC;B=(>#7%Q?M
M=?LLSQ1S#]H?X,1AU+>7=?$7PK:7,>"5*3VEWJ<%U;RJ5(>&XABE4C#(.*V$
M_:;_ &;9%22/]H'X(LLBJR,/BMX"^97 *D9U\'Y@1@8!YZ5Z\_#+Q9P<U['&
M<3U%%\O+G_ <,3S2CR\T9_V1A>&WNK247%J-E[LKS.BEXB>&N*B[XSAC5*3E
ME?%]"FTI<O*T\;BLU237PN2E=]6KHVV^-GPZA.+W5M3TH_-N&M>$O&6BA"C!
M95=]4\/VD:M 2#< O^X7YY=B?-5VW^,GPHN<"/XC^"D<LRB.X\2:59R$J-Q/
MEWES;OM*_,C;=K@$HS8-0Q?&SX-W$L4$'Q9^&DTT\B10PQ>/O"DDLLLK!(XX
MHTUAG=Y&951$4LS$*H)(%=!_PD_@+6)8['_A(/"6IS7#JD5I_:^B7TL\B9=5
MCMS<S/*Z!6=0J,R@%@!@FO,J\-^*^$;GB<?P\H\O/&G5X XBP3<8)<[E7GQO
MB%&-_BFL/)03;Y6U8]6CG_ >*M'#?7*DN:,92H\591BK2E91C[.&0P;;N[1]
MHG)Z)K[-NR\9^$-3 .F^*?#FH JC@V6NZ5=@I*=L;@P7<@*R-\J-T<\*2:Z)
M9$<91E< D$H=P!'4$KD9'<=17#7'@7X9ZM(5NO"'@;4Y6,KD3>'_  _>2L9.
M9G^>SD<E^LKCENK'O61-\%/A-*V]/ /ARR?Y<2:5IW]D2H4! :.326LI(V9?
MDD=&5I$RDC.AVUY[J^(F'7++)^$,?+2TY9]G62J2[^Q_U:SQJ[LDO;R5KOF;
M:BO04>%JUI1QV>8:/5++<OQ_\NGM/[6RY.U[M^R6KM;37U+.?7\B/YBC(]1^
M8KRN/X.>!H 18KXMTH;2@&D_$'XA::B(3D1I#;>)HX4BC;#Q0I&L4;#*H 2"
MW_A5:QL&L/B)\5=/(VD?\5I<:LNX AF*>)+'6D;>ORM&RM$I DCCCES(1YIQ
MQ0498GA#**Z=N:.4<6U,752LFU%9KPYD-*3U]WFK1BW\4H)7;6#X>J.U+/,;
M3VM+&Y+&C"[LE=X/-,QFEKK:G)I--*6QZO17E3> _%\"JEC\8_&ZA0R@:GH_
MP\U3"]8\NW@ZTG=U;AY9)G>1,KE&PX8GASXKVQ#0?%'0+P@JVS6/AS;R*QQA
MD9](\6:,RQ$?,@5?-5_O3/&=@/\ 6;/(N*EX><6RVYJE+'<"SI+1-N+J<9TJ
MTDF[?P8R=OAN[ LIRZ2O'BC)%VC/#\11F]4DGRY#.">JO^\:7=[KUBBO*'@^
M-<!Q%K'PMU1064-+H/BW1'8#E)6\KQ'KJ G[C0JH SYHG./*,-UX@^+>CV5W
MJ&J>&/AI-96-O)>WEU#\0=>TM+:TMHFENY9#J/@*>!$MX8Y+AYY;F*%(E8,,
MKN92XTHX=3>9<.<7Y;&G%RJ3EP_BLUA&,8\TVZG#KSJFXQ6\E-Q?1M*3BUD-
M2HXK"YIDF+<VHQ2S.C@Y-MI17+FGU"5VV[)I/35*Z3]<#*25!!9<$@$9 .<$
MCJ,X.,]<''2C('^'?\NM?C!\,_VVO^$E_:!U>YTKQY\.K.'XN:CHGA#1M/UK
MQ'#K6CZ UI<-:>$Y;>STG4=.O-1N9FN+BTD$;Z='?7>M&XN7MHX55/T8\2^&
M-(TC2Y]>^.?QKODT&,N+R*Y\0Z=\(? ,49!8P3C3K_3]2N8!D[X]9\6ZDDJJ
M!(K+E3\+P#XO9IXFX;'KA/PUXO\ [0PF?9IDU*EQ%0CPS@ZM"ACZ]+),UJ+,
MJ<>(YX3/\LCA\PH_V7POF\L'B*N(RRNY8G!U6_9XAX4RGA=T:V;<:\-U,!++
ML'CJ]?*,5#.:E&I4PM*KF&#=3!5)913K9;BI5,/-X[.<#&O2A2QE-*C7@CTK
MQ-\4? /A&Y73]<\3Z=#JTF/)T&R,VL>([C(R/L_AW1H=0UN?/0&.P922!NR1
M7,?\)Y\0O$6U/!7PPO["VD5]NO?$W48_"%DN"=LD'AW3XM=\6W.Y<,(=0T[0
M2<[6EC.<>(:%^TQ^S)X<2\TCX':+K/Q0O(6"7-I^SM\+/$?CVQN94&T&_P#&
M_AS1D\#B8L K7&M>,HOG;?+,!N<= _Q-_:G\8>9'X$_9ST#X>6<ZB2UU[X]_
M%+2;6^AB."LK^ _A#9?$2ZN)F!+?8;[QGH,B[=D\\#G"_L:\*O%_,DJG%6=Y
M=X>82:559?AWE&09C&E)QYZ;S?C^<L5GN%]E)2]MD7!^48Y.3]A/GC!O\V?B
M?X:8=N'#N'QO&^(A[CQ. P^;<28-55I!5,-P;1K8+*:[J)Q]GG'$.)PJY?WW
M+'GMZ;_PKSQQX@&_QW\4-8%M(5DE\/\ PZM(_ FD %0&MI=:$^K>-;F/EE:6
M#Q%I7G9W&WB^Y71:/X'^&GPWM[S6K#1?#_A[RHWN-3\3:B\1U%XSS)-JOBK6
MYY]2G49):2^U-U4$\@5XG_PI_P#:,\8-(_Q$_:@O?#%C<Q;9?#W[/_PV\+^!
M(8@3_JCXM^(TGQ:\62G:,&[TR;P[/\Q:)8&"[;>G_L9_L_"\M=6\8^$=1^+^
MNVOS+K7QQ\7>+/C'<F?(/VF'3_B#K&N^'M.E! V#2=$T^*(!1#%&J@#NR[PK
M\*<AQ=',LRS_ /UASF@^;#YKA,KSOC/.L+)J]2A'/N/L9DF+RRC*?-%4\FK8
MS P;YZ.'=.T7S8KC[Q'SFC+"99PM_8V7S2C6PV=YSE/#. KQNE"M#*>"L-Q)
M2QTXQM-_VHLOQ4TO9U*T9W:L:O\ MC_LZV&HSZ'H7Q!A^)7B*!2'\.?!K0O$
MOQFUQ9P0@M;FU^&.C^*8M/N"Y";=5N;%$;)EDC4,PRQ\;_CSXO$ ^&?[*_BK
M3K2Z#K'XB^//CGPE\*-+BY(2X/ASPT_Q0^(3+C$GV74/"NB7#+\CF%\[?I[1
M]#T;P]I]OI.@:3INB:7:+LM=,T>QM=+T^V3^[!96,5O:Q+_LQQ*/:M, #@
M>@&*^N_MCA# Z9;P?5S&>TJO%6?8W&4G9-*IA\'PW2X5EAI2=INEBL=FE.-N
M1NI&[EXJR;C+':YGQE2RV&DHTN$^'\%@ZJORMTL3C.)JO%<,3"*4H*KA<#E5
M1WYTJ;M&/R:O@#]K?QCLD\8?'GP)\*[-F=)-&^"'PPAUO68[=FY7_A/OC!?^
M)+*:?R\QI<VWPRTS8Q\U8MP4*]/V-OA+JYAF^*&I?$SXZ74,PG ^,OQ,\5^+
MM!:7<79O^$ M;[1?AI$&8@^5!X,CA4*J)&J#;7UA11_K[Q-1TRG%87AN*NHR
MX7RS+N'<5[-II4:V9Y3AL+FV,II-JV/Q^*E)-\\I-ML7A]PO6L\VPF*XEEI*
M4>*LSS'B/">UTO6HY7F^*Q>48*I*45+_ &#+\+"+2Y(P227(^$/ '@7X?::-
M&\!>#/"O@G2 01I?A'P]I'AO3P5& ?L>C6=E 3_M-&6/.2<UUN .0!D]3CK2
MT5\IB,3B<96J8G%XBMBL16DYUJ^(JSK5JLW:\ZE6I*4ZDG97E*3;MJSZ[#87
M#8.A2PN$P]#"X:A!4Z.'PU*G0H4H+:%*E2C&%.*Z1C%+R"BBBL#<**** "BB
MB@!DGW1_OQ_^C%K_  Q?^"@G_)^G[;G_ &=W^TG_ .KE\:5_N=2?='^_'_Z,
M6O\ #%_X*"?\GZ?MN?\ 9W?[2?\ ZN7QI0!_K[_\$3/^42/_  3H_P"S0?@C
M_P"H?95^HU?ES_P1,_Y1(_\ !.C_ +-!^"/_ *A]E7ZC4 %%%% !1110 4C=
M#]#_ "I:1NA^A_E0!^''_!$W_D._\%C?^TW7[:?_ *B7P/K]R*_#?_@B;_R'
M?^"QO_:;K]M/_P!1+X'U^Y% !129'3OQP.2,],XZ#W/%>'^)/VBOA5H&J7'A
MRPUVX\<>,+?S%D\&?#32=2^(7BB&>)BK0:CI_A:WU"'0B""&F\17FD6L?)FG
MC4$CR<XS_).'Z%/$YYF^7910K5/8T*F8XS#X18BNU>.'PRK5(2Q.(GM3P]!5
M*U23484Y2:3YL5C,)@H*IB\30PT)2Y82KU84N>>ZA34VG4J/[,(*4Y/2,6VD
M>XTA8#//3KWQGUQT'N<#WKYR_P"$G_:*\<-M\,> ?"_PAT:5@%USXJZHOB_Q
M;]GF3*S0?#SP%J*:-;2J/F5=8^(T<L;D+<:=D.E _9ULO$N)OC#X_P#'GQ=D
M<(TNAZOJJ^$_A\LD;9")\/\ P.NA:/J-L!\HB\57'BB4J<2W$I))^<_UMS3,
M_=X8X1SC'QE=0S/B.-7@[)E*-G.%2.:82MQ3*Z?[FO@^%,9@:^\<6H>\</\
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
M#Y(98G&UXI(GT8H\;*2K(P*LI((Q6#/^S!^S7<Q-!/\ L^_!*2)\;D/PJ\"
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
M&7Q+\0VVJVEN^E>)/B%=>#?AW$O@W3YM9TSP9%X:U%;?Q9XE_P"$@!TOW/\
M:M\"?$'XH_ [QK\-OAM+8V6O>.K!O#ESK%_<P01Z+HMX&?4[Z".X22*\NY(X
M4L(K5U1"EY+.TJ>2 WF9UF53*,JQ^9T</]:K8/#5*U##O+\YS6G5KI6H0Q&7
M<.T<1GV,POM7!XNCDU&IF4L*JSP<'74##%87,<;A,9A,HJ4*6:U\'BX9;4Q.
M*P&"H1Q[PU5X1U,5FM2CEM"/MU32GCJL,*FTJTE!L_'C]@K]H_X!?LR^+_VK
M[.>#XAV]A^UA^UQ\<OVP]1UK78?#5Q9>'/%GQ,TGP99?\*_LX=)U(W<BW,7A
M.)-)N[A'L(9H[J34]9MX)H6C_2&3]KA_&4K0^%?&'[.WPFTIG4#7OB]\:? ?
MB3Q-Y$BX\RV^''P]\736*2J#O6/6OB+ITT;82XL P9!^4W_!/?X0ZE\2?C5\
M3_%WA6X\/^/O#'[+W[17Q2_9)^.OA3Q=X8TS3+&Z^(_@W3/"\OC*;P_'JMQK
M<>MZ7H-KXGTG4_#>K11:<FHW8N;9H;=$8M^_X^"_P?\ ^B5?#?\ \(3PI_\
M*BOQ7P*?&O&/ F#I>,'%'%>4\39=B,?0S.CPMP=FG":S;"8K-,?B,$\QS;C;
M)LJS.KBZ6!E2P\:G!.%R;#8/+Z>61KYGB,YGF?)\#1R;Q@A1G4XFQ?#&"JXC
M%2=# Y=G'#^.J+!TL-@Z;]MB^#\5G=##TZU?VU2DOKF#S'VGUF;<L/+#*'Q]
M+XG_ &7/$ \WXT_MH^"OBGNPD^@WOQI\">!/AV)%<E81X&\#Z]HMKJ=N,%1;
M^+M4\4NRY$LLF#GUC0OVH/V)? NGQ>'/#'QT_9R\+Z39@>1I'A[QYX!TS2X!
M(JG,=KI-_'9;F&"[ ,Y8DR,7S7NME\*/A?IMPEWIWPX\!V%TBNB7-EX.\-VM
MPB2+LD19H-,CE59$.UU5@'7Y6!'%;?\ PAGA#_H5O#G_ ((M*_\ D2OV[*>#
M^ L@G/%97@<9+-ZR5/$9]C*-/%YSB\-=-8?'9KF6.S7.\<X22<:F+SBM%)<L
M:$+1D_3P>6<0X6I*M3H\-4:LH*G.M..:X_'54G%\U;,\16I8FK'=*E4C/E:3
M55W45\_7/[;W[(%GL$O[2GP6.\-M^S_$#P_=@!-N=WV2[F$?WAM#[=W.W.UL
M4)OV\/V.((S(_P"TC\)74$ K!XLLKJ3YC@8AMO-E8#^)@A"CEB!S7TC_ ,(;
MX1'3POX<'_<#TK_Y$H_X0WPC_P!"OX=_\$>E_P#R)7I5J5.3D\/CITXM+D5;
M+8UG%\J3<W#-,/SKFN[15-\ONIW7,_8I_P"L*4?:K)I._O.'UVFFKKX5)U>5
MV;5VY:J]K.Q\QG]OW]C3M^T5\-6/94UB5G8]E5?LHW,QX4=R0*JWO_!03]CO
M3O+-]\=/"-OYQ<1_-?S%C'MW\6]G,5V[UR6"@D@ DU]2_P#"&>$/^A6\.?\
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
M^!6MWS(Q)"6PN_$'QXN%GME4AWE^PVUR\H4!HXPRO]-?V7IO_/A9?^ EM_\
M&J/[+TW_ )\++_P$MO\ XU3?%^+@U]4R;A3!QCM%<,9/F&RMK/.L+FE5Z<JN
MYM^ZG?F<Y22X-PD[_6\[XNQDG]I\59UEK7PO2.1XK*J<=4](P2M)Q2Y8P4?E
MN'X;_&^=<:I^V+JL)\L GPQ\*?@MI :5S^^8C7])\8N(E&19QHZ2P9S<W%^0
M,6)_@AJU_N&K_M;?M!7Z,JQ-'9>)/@_X75H%.YHC)X3^%.B74;R,3OO+>Y@O
MU4A(KF-%4#Z<_LO3?^?"R_\  2V_^-4?V7IO_/A9?^ EM_\ &J;XVSSF4Z=/
MA[#36U3!<'\(X"HMM54P61T*D6K>ZXR3CKRM7!<#9#R\E6IQ%BJ>EZ>/XSXP
MS"DTM+2IXW/<13DFFTTXM26][*WS'#^SCX"D*G6_C'^T#XCR[/*E_P#M*_$O
M2X)CC;#OM?"7B?PS:QBW !C%M!;B5QYEW]ID+.8I/V4?V;+H[M4TK6?$,A,C
MM)XI^,OQ5\4LTTIS-='^W_B'J"B]FY$MXJK<NA:-I"C%3]0_V7IO_/A9?^ E
MM_\ &J/[+TW_ )\++_P$MO\ XU27'G&L7>CQ7Q!A5_)@LUQN!I)*Z2C1P=:A
M2BDGRI1@DHI0248Q2/\ 4#@>45&MPEP]BVM>?'Y3@L?5;TNY5L;1KU9-M7;E
M-MR<I.[E)OYOL_V5_P!D6R#;?@;\$;HMY7S:IX/\*:RX$.=@636+>_= 2=\@
M1E$TG[R822?-7=Z3\)/@#H+I+H7PS^$&BR13_:HWTGP9X'TYX[G:$^T(]GID
M+)/L 3SE(DV +NP *]5_LO3?^?"R_P# 2V_^-4?V7IO_ #X67_@);?\ QJN/
M$\6<4XU-8SB7/\6I*TEBLXS'$*2LD[JKB)IW22=]TK/0[<+PAPG@91E@N&.'
M\'*-G&6%R;+L.XM/F3BZ6&@TTVW=6U;>[9QGB+PWX&\2>#?$G@6X?3-.T'Q1
MX=UWPOJ$>BW&F:9/#IGB+3KO3-1^PO"C16MPT%[,\4OD2*D^V5XY""I^ O@I
M_P $O/V2_@)\3_!GQ;\#Z]\1)?%7@6]N+_14U[Q_HVI:4\]SI%_HLGVZRAT"
MR>XC^QZE<,JQW,!$PC?)53&WZ8?V7IO_ #X67_@);?\ QJC^R]-_Y\++_P !
M+;_XU7I9%XA<;\,97GF2Y!Q1G&4Y5Q-1J8?/\!@\94I8?-Z-7#5\'5IXZ%W[
M>-3"XG$4)*3UIUII[W/.SWP[X'XGS3(LZX@X7R?-LUX8K4\1P_C\9A(5,1E%
M>CB</BZ57 ST]A*GB<+AZT7%:3I18P:KI*C U#3Q]+RT'\I:7^U]+_Z"-A_X
M&VO_ ,>IW]EZ;_SX67_@);?_ !JC^R]-_P"?"R_\!+;_ .-5\:?9C?[7TO\
MZ"-A_P"!MK_\>H_M?2_^@C8?^!MK_P#'J=_9>F_\^%E_X"6W_P :H_LO3?\
MGPLO_ 2V_P#C5 #?[7TO_H(V'_@;:_\ QZC^U]+_ .@C8?\ @;:__'J=_9>F
M_P#/A9?^ EM_\:H_LO3?^?"R_P# 2V_^-4 -_M?2_P#H(V'_ (&VO_QZC^U]
M+_Z"-A_X&VO_ ,>IW]EZ;_SX67_@);?_ !JC^R]-_P"?"R_\!+;_ .-4 -_M
M?2_^@C8?^!MK_P#'J/[7TO\ Z"-A_P"!MK_\>IW]EZ;_ ,^%E_X"6W_QJC^R
M]-_Y\++_ ,!+;_XU0 W^U]+_ .@C8?\ @;:__'J/[7TO_H(V'_@;:_\ QZG?
MV7IO_/A9?^ EM_\ &J/[+TW_ )\++_P$MO\ XU0 W^U]+_Z"-A_X&VO_ ,>H
M_M?2_P#H(V'_ (&VO_QZG?V7IO\ SX67_@);?_&J/[+TW_GPLO\ P$MO_C5
M#?[7TO\ Z"-A_P"!MK_\>H_M?2_^@C8?^!MK_P#'J=_9>F_\^%E_X"6W_P :
MH_LO3?\ GPLO_ 2V_P#C5 #?[7TO_H(V'_@;:_\ QZC^U]+_ .@C8?\ @;:_
M_'J=_9>F_P#/A9?^ EM_\:H_LO3?^?"R_P# 2V_^-4 -_M?2_P#H(V'_ (&V
MO_QZC^U]+_Z"-A_X&VO_ ,>IW]EZ;_SX67_@);?_ !JC^R]-_P"?"R_\!+;_
M .-4 -_M?2_^@C8?^!MK_P#'J/[7TO\ Z"-A_P"!MK_\>IW]EZ;_ ,^%E_X"
M6W_QJC^R]-_Y\++_ ,!+;_XU0 W^U]+_ .@C8?\ @;:__'J/[7TO_H(V'_@;
M:_\ QZG?V7IO_/A9?^ EM_\ &J/[+TW_ )\++_P$MO\ XU0 W^U]+_Z"-A_X
M&VO_ ,>H_M?2_P#H(V'_ (&VO_QZG?V7IO\ SX67_@);?_&J/[+TW_GPLO\
MP$MO_C5 #?[7TO\ Z"-A_P"!MK_\>H_M?2_^@C8?^!MK_P#'J=_9>F_\^%E_
MX"6W_P :H_LO3?\ GPLO_ 2V_P#C5 #?[7TO_H(V'_@;:_\ QZC^U]+_ .@C
M8?\ @;:__'J=_9>F_P#/A9?^ EM_\:H_LO3?^?"R_P# 2V_^-4 -_M?2_P#H
M(V'_ (&VO_QZC^U]+_Z"-A_X&VO_ ,>IW]EZ;_SX67_@);?_ !JC^R]-_P"?
M"R_\!+;_ .-4 -_M?2_^@C8?^!MK_P#'J/[7TO\ Z"-A_P"!MK_\>IW]EZ;_
M ,^%E_X"6W_QJC^R]-_Y\++_ ,!+;_XU0 W^U]+_ .@C8?\ @;:__'J/[7TO
M_H(V'_@;:_\ QZG?V7IO_/A9?^ EM_\ &J/[+TW_ )\++_P$MO\ XU0 W^U]
M+_Z"-A_X&VO_ ,>H_M?2_P#H(V'_ (&VO_QZG?V7IO\ SX67_@);?_&J/[+T
MW_GPLO\ P$MO_C5 #?[7TO\ Z"-A_P"!MK_\>H_M?2_^@C8?^!MK_P#'J=_9
M>F_\^%E_X"6W_P :H_LO3?\ GPLO_ 2V_P#C5 #?[7TO_H(V'_@;:_\ QZC^
MU]+_ .@C8?\ @;:__'J=_9>F_P#/A9?^ EM_\:H_LO3?^?"R_P# 2V_^-4 -
M&KZ62 -1L"20 !>VN22<  >=R2> .YK1JA_9>G @BPL@000?LEMD$<@C]UU!
MY%7Z "BBB@!DGW1_OQ_^C%K_  Q?^"@G_)^G[;G_ &=W^TG_ .KE\:5_N=2?
M='^_'_Z,6O\ #%_X*"?\GZ?MN?\ 9W?[2?\ ZN7QI0!_K[_\$3/^42/_  3H
M_P"S0?@C_P"H?95^HU?ES_P1,_Y1(_\ !.C_ +-!^"/_ *A]E7ZC4 %%%% !
M1110 4C=#]#_ "I:1NA^A_E0!^''_!$W_D._\%C?^TW7[:?_ *B7P/K]R*_#
M?_@B;_R'?^"QO_:;K]M/_P!1+X'U^Y% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 R3[H_WX_\
MT8M?X8O_  4$_P"3]/VW/^SN_P!I/_U<OC2O]SJ3[H_WX_\ T8M?X8O_  4$
M_P"3]/VW/^SN_P!I/_U<OC2@#_7W_P"")G_*)'_@G1_V:#\$?_4/LJ_4:ORY
M_P"")G_*)'_@G1_V:#\$?_4/LJ_4:@ HHHH **** "D;H?H?Y4M(W0_0_P J
M /PX_P"")O\ R'?^"QO_ &FZ_;3_ /42^!]?N17X;_\ !$W_ )#O_!8W_M-U
M^VG_ .HE\#Z_<B@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH 9)]T?[\?_HQ:_PQ?^"@G_)^G[;G
M_9W?[2?_ *N7QI7^YU)]T?[\?_HQ:_PQ?^"@G_)^G[;G_9W?[2?_ *N7QI0!
M_K[_ /!$S_E$C_P3H_[-!^"/_J'V5?J-7Y<_\$3/^42/_!.C_LT'X(_^H?95
M^HU !1110 4444 %(W0_0_RI:1NA^A_E0!^''_!$W_D._P#!8W_M-U^VG_ZB
M7P/K]R*_#?\ X(F_\AW_ (+&_P#:;K]M/_U$O@?7[D4 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M #)/NC_?C_\ 1BU_AB_\%!/^3]/VW/\ L[O]I/\ ]7+XTK_<ZD^Z/]^/_P!&
M+7^&+_P4$_Y/T_;<_P"SN_VD_P#U<OC2@#_7W_X(F?\ *)'_ ()T?]F@_!'_
M -0^RK]1J_+G_@B9_P HD?\ @G1_V:#\$?\ U#[*OU&H **** "O#_#/[1WP
M9\8>/]3^&?AWQSIVI>+-,O-4TWR([;4H])U75M ;4$\2Z-X<\33V47AKQ/K?
MA6;2=4M_%>CZ!JVHZEX;N-.OX-8MK26RO%@]O;D<@GD=!D@Y&#SZ'!]L9K^?
M.Y^#OQ8B^(O[3?P/_9$O_'^G?"C]I/X<_M#6OB7X8?%_X?>+=$G_ &+_ (W_
M !#^%?QQO-%^+WP;^*&O65C9Z+X!\??&/Q!-82_!3S_&&DRS?$6^^)_P?USP
MWX$TWQ1X:O #]N?AO\;?A5\7FU)/AOXWT7Q:VE66D:M<C3)9\3Z!XAEU2'PY
MXITLW5O;#6_!WB6;0];B\,^,M%.H>%?$<NC:M'HFL7[Z;>B#U-NA^A_E7X^?
ML:?#SQW?_M ? #XA+X"\3> ?!GP8_P""8WPW_9I^(MIXHT#5?"=R?C:WCOP7
MK3?#ZVT[4+*S@UU_@[I?P_\ %,=_KFBR:IX8MW^(UE%X=UB^BU.]>OV!D.(W
M/HC']#0!^'/_  1.(&N_\%C>O_*;K]M/HK'KX2^"'H#_ /6[]17[C[AZ-_WP
M_P#\37\ZOP5_X)-_!'XT?%O]N_XDCX\_MR_"#4_%_P"WG\=]?\0^'?V>?VRO
MC+\$/ VI:]JNC?#K4]0UZX\'>!-8T_19=<O)[^2"YU6:W?4)+"VTW3I+AK+3
M;""V^C/^'(_P8_Z/0_X*N?\ BRS]IG_YI: /V>W#T;_OA_\ XFC</1O^^'_^
M)K\8?^'(_P &/^CT/^"KG_BRS]IG_P":6C_AR/\ !C_H]#_@JY_XLL_:9_\
MFEH _9[</1O^^'_^)HW#T;_OA_\ XFOQA_X<C_!C_H]#_@JY_P"++/VF?_FE
MH_X<C_!C_H]#_@JY_P"++/VF?_FEH _9[</1O^^'_P#B:-P]&_[X?_XFOQA_
MX<C_  8_Z/0_X*N?^++/VF?_ )I:/^'(_P &/^CT/^"KG_BRS]IG_P":6@#]
MGMP]&_[X?_XFC</1O^^'_P#B:_&'_AR/\&/^CT/^"KG_ (LL_:9_^:6C_AR/
M\&/^CT/^"KG_ (LL_:9_^:6@#]GMP]&_[X?_ .)HW#T;_OA__B:_&'_AR/\
M!C_H]#_@JY_XLL_:9_\ FEH_X<C_  8_Z/0_X*N?^++/VF?_ )I: /V>W#T;
M_OA__B:-P]&_[X?_ .)K\8?^'(_P8_Z/0_X*N?\ BRS]IG_YI:/^'(_P8_Z/
M0_X*N?\ BRS]IG_YI: /V>W#T;_OA_\ XFC</1O^^'_^)K^=S]IO_@D=\/?A
M9\.O#7B3PG^VK_P50AU35/CY^RW\/;IK_P#X*0?M*WT!\.?%?]I/X5?##Q?&
MD4OBE%CO)O"WB[5XM/NAE[&^>WO8@\MNJ-]"G_@B/\%\G'[:'_!5S';_ (V6
M?M,__-,?YGZT ?L]N'HW_?#_ /Q-&X>C?]\/_P#$U^,/_#D?X,?]'H?\%7/_
M !99^TS_ /-+1_PY'^#'_1Z'_!5S_P 66?M,_P#S2T ?L]N'HW_?#_\ Q-&X
M>C?]\/\ _$U^,/\ PY'^#'_1Z'_!5S_Q99^TS_\ -+1_PY'^#'_1Z'_!5S_Q
M99^TS_\ -+0!^SVX>C?]\/\ _$T;AZ-_WP__ ,37XP_\.1_@Q_T>A_P5<_\
M%EG[3/\ \TM'_#D?X,?]'H?\%7/_ !99^TS_ /-+0!^SVX>C?]\/_P#$T;AZ
M-_WP_P#\37XP_P##D?X,?]'H?\%7/_%EG[3/_P TM'_#D?X,?]'H?\%7/_%E
MG[3/_P TM '[/;AZ-_WP_P#\31N'HW_?#_\ Q-?C#_PY'^#'_1Z'_!5S_P 6
M6?M,_P#S2T?\.1_@Q_T>A_P5<_\ %EG[3/\ \TM '[/;AZ-_WP__ ,31N'HW
M_?#_ /Q-?C#_ ,.1_@Q_T>A_P5<_\66?M,__ #2T?\.1_@Q_T>A_P5<_\66?
MM,__ #2T ?L]N'HW_?#_ /Q-&X>C?]\/_P#$U^,/_#D?X,?]'H?\%7/_ !99
M^TS_ /-+7SC\'/\ @DI\/O&OQ>_:S\&ZW^VK_P %3GT7X0?%OX?>#O!B6O\
MP4>_:6MKF#1?$'[.'P9^)6J1ZC<KXJ=M0N7\5>-]=FAN)55X[*2ULT5(K9-P
M!_19N'HW_?#_ /Q-&X>C?]\/_P#$U^,/_#D?X,?]'H?\%7/_ !99^TS_ /-+
M1_PY'^#'_1Z'_!5S_P 66?M,_P#S2T ?L]N'HW_?#_\ Q-&X>C?]\/\ _$U^
M,/\ PY'^#'_1Z'_!5S_Q99^TS_\ -+1_PY'^#'_1Z'_!5S_Q99^TS_\ -+0!
M^SVX>C?]\/\ _$T;AZ-_WP__ ,37XP_\.1_@Q_T>A_P5<_\ %EG[3/\ \TM'
M_#D?X,?]'H?\%7/_ !99^TS_ /-+0!^SVX>C?]\/_P#$T;AZ-_WP_P#\37XP
M_P##D?X,?]'H?\%7/_%EG[3/_P TM'_#D?X,?]'H?\%7/_%EG[3/_P TM '[
M/;AZ-_WP_P#\31N'HW_?#_\ Q-?C#_PY'^#'_1Z'_!5S_P 66?M,_P#S2T?\
M.1_@Q_T>A_P5<_\ %EG[3/\ \TM '[/;AZ-_WP__ ,31N'HW_?#_ /Q-?C#_
M ,.1_@Q_T>A_P5<_\66?M,__ #2T?\.1_@Q_T>A_P5<_\66?M,__ #2T ?L]
MN'HW_?#_ /Q-&X>C?]\/_P#$U^,/_#D?X,?]'H?\%7/_ !99^TS_ /-+7S+^
MV/\ \$F_ 7P4_9J^*WQ.\#_MJ_\ !4R'Q5X4T;2KS1IM4_X*/?M+:E8Q7%WX
MK\/:7,T]E+XJABG!LK^Z15D8JKNKA=Z(R@']'&X>C?\ ?#__ !-&X>C?]\/_
M /$U^, _X(D_!=R[#]L__@JVH,LH55_X*5_M-@*HE=54;O%#M@* /F=VXY9C
MDE?^'(_P8_Z/0_X*N?\ BRS]IG_YI: /V>W#T;_OA_\ XFC</1O^^'_^)K\8
M?^'(_P &/^CT/^"KG_BRS]IG_P":6C_AR/\ !C_H]#_@JY_XLL_:9_\ FEH
M_9[</1O^^'_^)HW#T;_OA_\ XFOQA_X<C_!C_H]#_@JY_P"++/VF?_FEH_X<
MC_!C_H]#_@JY_P"++/VF?_FEH _9[</1O^^'_P#B:-P]&_[X?_XFOQA_X<C_
M  8_Z/0_X*N?^++/VF?_ )I:/^'(_P &/^CT/^"KG_BRS]IG_P":6@#]GMP]
M&_[X?_XFC</1O^^'_P#B:_&'_AR/\&/^CT/^"KG_ (LL_:9_^:6C_AR/\&/^
MCT/^"KG_ (LL_:9_^:6@#]GMP]&_[X?_ .)HW#T;_OA__B:_&'_AR/\ !C_H
M]#_@JY_XLL_:9_\ FEH_X<C_  8_Z/0_X*N?^++/VF?_ )I: /V>W#T;_OA_
M_B:-P]&_[X?_ .)K\8?^'(_P8_Z/0_X*N?\ BRS]IG_YI:/^'(_P8_Z/0_X*
MN?\ BRS]IG_YI: /V>W#T;_OA_\ XFC</1O^^'_^)K^<SP'_ ,$F? 'B']J'
M]HCX3ZA^VI_P5-;PE\-_A[^SCXD\,10_\%'OVEX=0AU/XD+\:E\5->7P\6/)
M>07#>!] :SAEB5;0Q7)@95N9$'TK_P .1_@Q_P!'H?\ !5S_ ,66?M,__-+0
M!^SVX>C?]\/_ /$T;AZ-_P!\/_\ $U^,/_#D?X,?]'H?\%7/_%EG[3/_ ,TM
M'_#D?X,?]'H?\%7/_%EG[3/_ ,TM '[/;AZ-_P!\/_\ $T;AZ-_WP_\ \37X
MP_\ #D?X,?\ 1Z'_  5<_P#%EG[3/_S2T?\ #D?X,?\ 1Z'_  5<_P#%EG[3
M/_S2T ?L]N'HW_?#_P#Q-&X>C?\ ?#__ !-?C#_PY'^#'_1Z'_!5S_Q99^TS
M_P#-+1_PY'^#'_1Z'_!5S_Q99^TS_P#-+0!^SVX>C?\ ?#__ !-&X>C?]\/_
M /$U^,/_  Y'^#'_ $>A_P %7/\ Q99^TS_\TM'_  Y'^#'_ $>A_P %7/\
MQ99^TS_\TM '[/;AZ-_WP_\ \31N'HW_ 'P__P 37XP_\.1_@Q_T>A_P5<_\
M66?M,_\ S2T?\.1_@Q_T>A_P5<_\66?M,_\ S2T ?L]N'HW_ 'P__P 31N'H
MW_?#_P#Q-?C#_P .1_@Q_P!'H?\ !5S_ ,66?M,__-+1_P .1_@Q_P!'H?\
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
MJE\C6%\/2Q:L0;;[ 8F%L-0.HHUBO ?LQ? ?P]X9_:+\6_'3X-_!'QA^RO\
M#GQ]\/O$^C?&;X1:WI>A>!]!^)7QM/CWP[JGA3XL6/PQ\'^)/$/A'2_%^@^'
M[7XBZ7XR^)6EII]Y\4[7QQX:&IW_ (L7PG87VC_I'M7.[ W8QNP,X],]<>U
M 484 #).  !D]3QW/>@!:*** "BBB@ HHHH **** /B+]N'PSXL\4:!^SK#X
M2\)^)_%LV@?MD?LP^-_$,7AC2)M6DT+P9X)^)%EX@\6>*-5CB=&BTC0]*MY+
MJZ\@7-_.=D.G:??7)\FN!_:#^*U[XA^.GP[^".N_LF?M9?$/X?\ A'XD?";Q
MQ-\0? G@'P/>_!OQ!XXT[5M.U_P7J.N^*M<^*?AS5[;PA\&_%$>D>/?%$B>%
M+F6[\4>'=&&EMJ%MX?U&PUK]&BJMC(!P<C(!P1T(ST/O2&-"VXHA;(.XJ"V1
MT.<9R,#'IB@#X?\ %OAB]U?X):WX#\9^&_CY8ZK^T_J?Q#E\8^(_@7<II7CO
MX:GQ=87;:!%=>*(]3M+[P;J&D>#+#PWX'TW7X;2_L++5]+BAUJ73[":28^'>
M-/A;\>])^"?_  30\)?$"SU;XK?%'X2_'O\ 9WU3XV^*? WA:RCT^TM/!?PR
M\?>'/%7CK5]/T".PT'3--MM3UC1HM37PY8P64M]=SW7ASP[!H\36^G?JD54X
MR <<C(!P?4>E!53C(!P<C(!P?49Z'WH ^2O%OA;Q-??#7]JWQ-<^'M;NO$OC
MC0?'_A/PCX?LK5[[7KSPQX.\&:SX,\&:=IUE$P\YO$_B.X\2^+-)5I(4:#QE
M;R3O;1B1X_A>X_9Z^(5_X6_X)7>-?%WPX^(>O^"/V??@!XS^''QG^%_AO5=:
M\,?$WP5X\^(_[-W@7X7Z+X[L]+T?7O#VI7M_X(ET'XC?##4;KPUKKZUHEI\5
MY/%6@SSZ%9:MK%I^SI (((!!Z@C@_44;5P%VC:,8&!@8Z8'3CM0!\U?L=^$?
MC7X#_9C^"W@_]HCQ7>>-?C'X>\#Z?IOC7Q'JNI6^MZ[>W4-Q=G2H/$WB"U1;
M;Q)XLTOP\^CZ/XL\30/<1>)/$FGZKKB7E\NH"\N/I:BB@ HHHH **** "BBB
M@ K\^/AWK'C'X3^./^"D?Q/U#X-_%WQ19:A\:_!WQ ^'?AOPQX4MKCQ-\8-(
M\._LH?L^_#BX@^&<&K:OI>EZG=S^.O /B7P_;'6]3\/VL<EFFL7,T.@W5KJD
M_P"@]-V)\WRK\WWOE'S?[W'/XT ?F)\ 9=8^,-_XEU?4/V<_C_\ !O6?B1\>
M?"'Q ^-OB#X[>!/!7@Z?Q5I_PX\&V5YX(\/^$]-\-^/?',K>"/"\_@[X;>"[
M9=5FLI=2D;Q9JIM[J_U7795]!;P5\3_'G[97PY^.G@_4?C'X"\(> O#'QI^#
M/QD^'_Q,MM*C^&_C7PS<2:5>^!?$WPOT4W&KSZ?XIU'QWHVC>(_^$\\,ZA8V
MGB'P!:7OA[QU9OJEMX5T_0_OI41?NJJ_[J@?R I0 ,X &3DX &3ZG'4_6@#\
MTOAKX*^(D\G[=GAFY\$>-O#]M\</VT8#HFKZKH36-KJOP@\3?!7]GGX?>,?'
M>CW4]P5?28K/P'\1-(L)I?LVH#58-+E:PBL]3TN[N_7?'/A[Q&_[=7[,GB/3
M?!OB>?P/X6_9L_:K\(ZYXMT_1&?PAX;U_P >^-_V6M6\%^']1U"*1$M+K5]+
M^%_C&2S2"UFM+5-*A@OKBREU+2X[W[0"J,D* 2<D@ 9/J?4^_6C R&P-P& <
M#(!Z@'K@T ?.>F>$?$7B']IWQ%\0]?T>[L?"WPX^%VE_#WX:75XMB8M7USXB
M:S%XO^+6OV CFENEMH['PG\*/"L$UQ%;3?;-*\30Q^9:R!Y/HVC YXZ]??ZT
M4 %%%% !1110 4444 %?$7_!1?PGXO\ '7[('Q6\)> _"?B/QQXLUJ7X?PZ1
MX8\*:=_:>MZBUC\4O!&M:@UO;M-:VZQ66D:5J.H74MS=V\2P6KQH\ES+;VT_
MV[2$!A@@$>A (_(T ?G)^VM\5)[A--^!6I?LH?M8_'CX:^.]'TGQ!\1-5^"7
MPZ\(:YX8UO01XD\T?"#7M1\9?$OX?7^E2^)QID#>/,:7>6D/@>[N=!>[M=2U
MV:;1_;KF75M%T7XF>,_$O@KXIW.H?%SXB#P8MK\-+ W'CSP5X#TRUD\">&=?
MWVNKVU]IFF6TEAJ_C>35O#[ZEJ>C3>-5U&SLG2*6:T^JS&C'+(A(X!*@D =!
MDCM3B 1@@$=<$ C/7/YT ?D)XR^!'QN\!_\ !.+PU\#]47X@?&KQOX3^.OPD
MF\*_\2O1]>^*-S\&/!G[;G@SXD>"1\1+WPY_9N@^(?'7@OX!^'[#_A8OBNV2
MUD\4>(M%U*\D;6_$^JM/K'Z*Z#H^HW?Q2^(OCW6=-N[73](TCPUX$\&":TNY
M+FZT:TMU\;^+==T^U19+ATUS7=>T_0'MX[?[1/<> 8$C@8^49?9BJL,,H(]"
M 1QTX/I2T ?B%X?_ &>/'_C/_@F[^SA\%?'?P@\?V,VD_%?3-1^+%EI3WO@W
M]HCX.:!HGQ(^(OC#1_BS\"=;T;Q!I>K^'_BUX0\2R^ -<T#Q)X/UNZ\1:=X5
MU#Q1<^';/6?$$$7AZZ_0[]B7P3\4?AQ^S?X'\"_%V6VO?%7A?4O'>DV.MMH/
MA_PMXC\4^"(/'_B=_AWXQ^(GAWPFH\+:5\5_%_@B70O$?Q53P^4TR^^(&I>(
M=7CLM(GU&XT;3OJW:H&T*H7^[@8_+&*=TZ4 %%%% !1110 4444 %%%% 'P!
MX%M/%W@C]K3]N[XGZG\-_B+J'A.^^%G[-L_@VYTCPTUT_P 2=0^&?A/XOR^+
M/#O@#S[RUM]8U^TO?$6A:5;6=_/H]O?ZEJ<*V5Y<6EOJ%[9>5?"/7O$'[0>N
M?%;6-7_9:_:<^"WB_P",.N_!;PU\1_$7Q[\'^#/"6E1?!CP?-XLUV'X7^$#X
M8^)?CVYU+3-!TY/&NG>(M1N;?3[74?&7QBOM2L9&L]2LM*TG]4MJ_-\J_,,-
MP/F'HW'(]C0J(N=J*N>NU0,XSC. .F3^9H ^"/B%X)^(_P 3_P!JKX#?$GP#
M=?&3X>I\ ?'_ (X\+?%#1_&-II"_!#XI_![QE\--<2_U'PSI$MYJ4FJ>-9/'
M1^'[>#/'7AZ?1/$OARPTCQGH'B2&/PWJ]]HNL\?X8\+?%33/C;_P45U/1_!G
MC'2Y?BCK/[/&B_"[Q=<Z1+9:+K+M\'/#7PO\2^*]!OY)<W-A\.];N+_4M7,\
M5D[PZ/-=Z<NH6+Q74OZ4  $D  GJ0!D_4]Z J@DA0">I &3CID]\>] 'P1\9
M?AYK=G^TK_P3Z'@SP5XFOO 7PKUKXVVGB+6]&TF:]T#P+H6I?L^ZWX \&_V_
M?(ZM:1ZGK-UI^CV36]O>&%V:[U 6.G1RWJ>.:O\ L07VK?M _#2R\(:KX]TC
M]GGP%^U_XT_;U\<:;XMO]#;3[GX[:WH/CFUL? GPB2/24\<)X-\0?%'X@Z]\
M;_'U]XDU:7P[IE[90>$/! U32O&6I6?@;]6BJD@D D="0"1]#U'X4N .@Z\G
MW/K0!&RA8T4=%:)1] Z#^E?X8W_!03_D_3]MS_L[O]I/_P!7+XTK_<ZD^Z/]
M^/\ ]&+7^&+_ ,%!/^3]/VW/^SN_VD__ %<OC2@#_7W_ .")G_*)'_@G1_V:
M#\$?_4/LJ_4:ORY_X(F?\HD?^"='_9H/P1_]0^RK]1J "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH 9)]T?[\?_ *,6O\,7_@H)_P GZ?MN?]G=_M)_
M^KE\:5_N=2?='^_'_P"C%K_#%_X*"?\ )^G[;G_9W?[2?_JY?&E '^OO_P $
M3/\ E$C_ ,$Z/^S0?@C_ .H?95^HU?ES_P $3/\ E$C_ ,$Z/^S0?@C_ .H?
M95^HU !1110 4444 %%%% !17B'C_P"'_P 7/$FOC4O!7Q]UKX<:+_9]K;'P
MY8?#OX>^)X#>PR7#7.I?VGXFTR[U/S+Q)8(WM1+]EA%LK0HK2RYXG_A4/[17
M_1W/B?\ \,U\'/\ Y1U\/C^+,^P>,Q.%P_AGQOFE"A6G3I9C@,=X<4\'C(1:
M2KX:&9^(.79A&E46L%B\#A:Z7\2C!IH\FMF6,I5:E.&09MB(0DXQKT:V1QI5
M4FDIP6(SJA6497NE4HTYVOS035CZ5U/5M+T:W%WJ^HV&EVID6$7.HWEM8VYE
M<,R1B>[EAB,C!6*H'WL%8JI"DB['(DJ))&ZR1R*KHZ,&1T8!E964E65E(964
ME64@@D$&OQU_;2_9&_:E^)5IX'N],^(&H_'VVT2?5X9] U+2O /@&?0;B_\
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
M'J*_ 7X6?M'?&+XD?!#Q5\8O"/[8?P]\0IXDO?V9=*O_ (3?$CP_\4_@18>
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
MPUX2^*>F:%XHM_\ @HW\#/@S^QY-\3_@#\95\#:JO[27P8T73_B-\*?!>C_
M;]J*\^'&C3Z=\3K"U\&>(D^+]IXKT7PEX$^->I^#_@=\4(_&_@?7?$\.F^*K
MWXL^W/W@\#?&?X6?$O5=?T7P%XZ\.^*]1\,R21ZO!HU^MVL2P:QJWARYNK2X
M51:ZKI]KXDT#7O#5WJ>D3W^G6GB/0]9T"YNXM8TJ_LK?BO#W[5_[-WBGQ[J/
MPNT+XV?#B^^(>D^--0^&^H>#?^$GL+7Q#;_$72M&'B34_A^=-OGM9Y?'&G^&
MF3Q+>>$;<2^(K?PY)'KTFFKI$B7C?@K^QUXF\*?L\_M!^&OV>=0^-.KR_">\
M^)NL>/?V6?VG/ UI>ZM\.OVK/@IXWD\3>+-$_85\/:K%X>\6Z'8^+/@Q\<OB
MIXM\6:SX9\%^(;;Q7XH^%VE_#&^?Q+X@N(?'5CX8]T^ '[-L/[4WQF_;.T[7
M?B)!X?\ A]\'?^"TOAG]JJ/PWHGA-9O&7C3Q%\&?@#^RQJ_PY;3_ !]JFN/9
M:)\/+OXA>&+NU\2W7AOP==ZMXA3POX@\$6GB_2[>X\16Z '['_&W]H[X#_LV
MZ)H/B3X]_%SP!\(M#\4^(;?PGX;U/Q]XET[PY:Z]XFN[:XO+;0M(:_FC;4-4
MFM;6XN$L[5)93%$SE0-N>MF^*7PYMO'-K\,[CQOX7A^(%[:QW=KX.EUO3X_$
M<\,UG>ZE $TIYQ=^?<:9IFJZG;6AC%Y<Z9I6JZE;V\MAIE]<6_P+^WAI=OJ?
MB#P_J7P<^-OQ0^&?[;G@+X=^)/$7[/'A#PAJ?B;4O!OQ4_M+7=-EN/A]\2?A
M?>V-_P##+QWX"\;>)/"VB>'O'6K:A'IWC+X<^')/^$NT+Q=X':TM=;?X\U_X
M<_%2/XA?&CX9ZKI&N:_\:O&O_!:;]F/]ISP%JT.FW]H\7[*OA.W_ &;=>UCQ
MS;^( AM)/!/@[X.?##XI? [6KC[>EM'XD*^!;N"VU#QEHMCJP!^WN@_%+X<>
M*/%.O^"/#OCCPMK?B_PN;@>(/#>F:WI][K&DFRNH;&_%Y8P3O/&=-O[BVT_5
M JL=*U"YM[#4A:7L\,#\U\0/V@?@O\*]2N-+^(GQ)\*^#KJPT>T\0ZP^NZB+
M.S\.:!J-[<Z9I6N^*M2,;:;X3T;6-4LKW3-%U3Q->:39:SJ5G>6&E3WEY:SP
MQ_BS^Q?\-/C!IFN_\$R?A[KFE:\OQ5_9:?\ ;T?]L76;FVOM-CLIO'E[XCTB
M*/7+V3-GJ[?';XKZ]X.^,7@L1WEZ/&'A_P ,7/CO3Y;JRTR2\'>?MV1^)OA7
M\6/CW^T?^RU\7-+M/C7X=^#_ ( T;X\_L1_&[PE?>)/@S^W5X*TG2O&E_P"
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
M;@?[(^7/.,\TZB@! ,?H.I[?Y_'O2T44 %%%% !1110 4444 %%%% !1110
M4444 (0#P0"/0C- 51T 'T '\J6B@ HHHH /\^G\J8(T&<#&[J02"3P-Q(.=
MV !NSNP!SP,/HH ;L&<\Y_WFYZ=>>0,< Y R0."<J !G&>3DY)/Y9)P/88'M
M2T4 -*@D$YXXQN;;^*@[3]2":7:,Y[_4X^N,XS[XSCC.*6B@! H!R,_F2!]
M3@>^ ,TC(K$%ADCD9)^4X(RO/RD@D$K@D$@DCBG44 -*@Y!S@]LD#CT /'H<
M8R,@Y!-&Q<  %0O "DK@8Q@;2. . .@P, 8&'44 -*@^O4'AF &.F " !Z@8
M![@TI )!YX.1@D#\0" 1['(I:* &[1_M=^K,?O=<Y/(] >%_AQ1L'^UT ^^_
M;N/FX/N.?>G44 -VCWZ$?>;//7G.<^AZ@< @4X#  YX&.22>/4G))]R23WHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** &2?='
M^_'_ .C%K_#%_P""@G_)^G[;G_9W?[2?_JY?&E?[G4GW1_OQ_P#HQ:_PQ?\
M@H)_R?I^VY_V=W^TG_ZN7QI0!_K[_P#!$S_E$C_P3H_[-!^"/_J'V5?J-7Y<
M_P#!$S_E$C_P3H_[-!^"/_J'V5?J-0 4444 %%%% !1110 45Y=XNNOC-#J^
MSP+HGPVO]"^QVY-QXI\1^)M+U7[>7F^U1BUTGPYJEI]E1! 8)3=><[-*'B0(
MA?F/MW[2_P#T*_P3_P#"T\<__,77PF8<?8/+\;BL#/ASCG$SPM:="6(P'!F?
MX[!5G!I>TPV+P^"J4,11E>\*M*<H36L6[J_T6&X;KXK#T<1'->'J,:T(S5+$
MY]EN'KP4K>[6H5:\:E*:O[T)Q4HO1];>VWU_8Z9;->:C>6UA:(\$3W-Y/';0
M))=7$5K;(TLK)&KSW,\-O"I8&2:6.- 7=0;=?D[^V!\6?B=]GT_X4>*XO!>E
M3S/I_BG55\"ZYKVK2^3;S7 T6QU275M(T?[(QO(1K,$4"W#N;2QGD:$",2_1
M_P %/BW\=OBGX$T[7= TCX3:E_9[?V!JTVN>*?%NGZT^JZ9! DUUJ5A8^&-0
ML[:74X7AU.,6UY/"\=T"I0AHD_$LB^E;P;GWBQQ3X6X7).*9X[A[*L!B:#P^
M09IB<SQN:4ZF)_UDR^KD]+"O&819+1K9,E.I"4ZU>KF<)TZ,,#"=?] S'P:S
MW+N#,FXPK9AD\<-FF,Q%*HJF98.EA,/A)QH_V5BH8^=98>O]?G#'>["2C3IP
MP;C*<L3*-/[3HKP?[=^TO_T*_P $_P#PM/'/_P Q=>F>#9?'$VES-X^L/"^G
MZT+V58(/"6IZKJVFMIPB@,$LMSJ^F:5=+>-.;E985MFA6)(629F=U3]WR3C/
M"YYCE@*.1<7Y?.5*I66(SGA7.LHP25-1;@\9CL)1PZJRYE[.FY\]2SY4['YS
MC\AK9?AWB9YCD>)BIPA[+ 9S@,;B&Y[25##UIU'".O-/EY8Z7:O8ZB66."-Y
M9G2**-6>221@D<:*"6=W8A410"6=B%4#)(%.WIL\S<-F-V[^';_>S_=QSNZ;
M?FSCFOAW]O3X<_%GXD_#GX;V/P-\2?".W^*7A3XR>'O'_AGX6?'J/6V^#?[1
M$/A;PEXY?Q!\%_'T_AU;W6M+M+[P]>ZEX\\-^(K+P]XQ3PGXY\ ^%O%6H^#?
M$FE:+?6#?E?XQ^/MY\;OV2?%'[(_[-?P/\0?L_?ML?$?XD_M':Y)^S)X]\:Z
M/>^!_"_Q._9"\?\ P=^./Q]^'DGQ$\.:@- \9_ WXM7_ (^^&_PYT*W\$165
MGXE\%?'=X;W1_A_H&B^,H/"GV)X9_1@DL<D:3(ZO%(JNDBL&1T< HR,I*NK@
M@HRDAP05)!&7@@^OX@CKSQD#/7G'0\'!K\$_AU\8[;X[?\$R/VO/'7@*\\/-
M^S=JW[+/[0&I?#C1=9\*ZCX6^*_A_P"-4_@GXJ>-_P!H7P3XBT!]?F\-^$]
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** &2?='^_'_P"C
M%K_#%_X*"?\ )^G[;G_9W?[2?_JY?&E?[G4GW1_OQ_\ HQ:_PQ?^"@G_ "?I
M^VY_V=W^TG_ZN7QI0!_K[_\ !$S_ )1(_P#!.C_LT'X(_P#J'V5?J-7Y;_\
M!$UP/^"2/_!.C(;_ )-!^"71'/3PA9CLI]/Q&"."#7ZB^8OH_P#W[D_^)H ?
M13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^
M)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W
M[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH
M_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T
M>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R
M?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_
M +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,
M7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?
M13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^
M)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W
M[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH
M_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T
M>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R
M?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_
M +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,
M7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?
M13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^
M)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W
M[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH
M_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T
M>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R
M?_$T>8OH_P#W[D_^)H ?13/,7T?_ +]R?_$T>8OH_P#W[D_^)H )/NC_ 'X_
M_1BU_AB_\%!/^3]/VW/^SN_VD_\ U<OC2O\ <W=P0!A^7B',;@?ZQ>I*X'U/
M%?X9'_!0,Y_;T_;</K^UW^TF>00?^2R^,^H/(^AYH PO#'[;G[9_@GP[H?@_
MP9^UU^T_X1\)>&=,M=%\-^%_#'Q]^*V@>'?#^C62&.RTG0]$TKQ9::9I.F6B
M$I:V%A:V]K;H2L42#BMW_AX'^WI_T>Y^UW_XDG\9?_FTHHH /^'@?[>G_1[G
M[7?_ (DG\9?_ )M*/^'@?[>G_1[G[7?_ (DG\9?_ )M*** #_AX'^WI_T>Y^
MUW_XDG\9?_FTH_X>!_MZ?]'N?M=_^))_&7_YM*** #_AX'^WI_T>Y^UW_P")
M)_&7_P";2C_AX'^WI_T>Y^UW_P"))_&7_P";2BB@ _X>!_MZ?]'N?M=_^))_
M&7_YM*/^'@?[>G_1[G[7?_B2?QE_^;2BB@ _X>!_MZ?]'N?M=_\ B2?QE_\
MFTH_X>!_MZ?]'N?M=_\ B2?QE_\ FTHHH /^'@?[>G_1[G[7?_B2?QE_^;2C
M_AX'^WI_T>Y^UW_XDG\9?_FTHHH /^'@?[>G_1[G[7?_ (DG\9?_ )M*/^'@
M?[>G_1[G[7?_ (DG\9?_ )M*** #_AX'^WI_T>Y^UW_XDG\9?_FTH_X>!_MZ
M?]'N?M=_^))_&7_YM*** #_AX'^WI_T>Y^UW_P"))_&7_P";2C_AX'^WI_T>
MY^UW_P"))_&7_P";2BB@ _X>!_MZ?]'N?M=_^))_&7_YM*/^'@?[>G_1[G[7
M?_B2?QE_^;2BB@ _X>!_MZ?]'N?M=_\ B2?QE_\ FTH_X>!_MZ?]'N?M=_\
MB2?QE_\ FTHHH /^'@?[>G_1[G[7?_B2?QE_^;2C_AX'^WI_T>Y^UW_XDG\9
M?_FTHHH /^'@?[>G_1[G[7?_ (DG\9?_ )M*/^'@?[>G_1[G[7?_ (DG\9?_
M )M*** #_AX'^WI_T>Y^UW_XDG\9?_FTH_X>!_MZ?]'N?M=_^))_&7_YM***
M #_AX'^WI_T>Y^UW_P"))_&7_P";2C_AX'^WI_T>Y^UW_P"))_&7_P";2BB@
M _X>!_MZ?]'N?M=_^))_&7_YM*/^'@?[>G_1[G[7?_B2?QE_^;2BB@ _X>!_
MMZ?]'N?M=_\ B2?QE_\ FTH_X>!_MZ?]'N?M=_\ B2?QE_\ FTHHH /^'@?[
M>G_1[G[7?_B2?QE_^;2C_AX'^WI_T>Y^UW_XDG\9?_FTHHH /^'@?[>G_1[G
M[7?_ (DG\9?_ )M*/^'@?[>G_1[G[7?_ (DG\9?_ )M*** #_AX'^WI_T>Y^
MUW_XDG\9?_FTH_X>!_MZ?]'N?M=_^))_&7_YM*** #_AX'^WI_T>Y^UW_P")
M)_&7_P";2C_AX'^WI_T>Y^UW_P"))_&7_P";2BB@ _X>!_MZ?]'N?M=_^))_
M&7_YM*/^'@?[>G_1[G[7?_B2?QE_^;2BB@ _X>!_MZ?]'N?M=_\ B2?QE_\
MFTH_X>!_MZ?]'N?M=_\ B2?QE_\ FTHHH /^'@?[>G_1[G[7?_B2?QE_^;2C
M_AX'^WI_T>Y^UW_XDG\9?_FTHHH /^'@?[>G_1[G[7?_ (DG\9?_ )M*/^'@
M?[>G_1[G[7?_ (DG\9?_ )M*** #_AX'^WI_T>Y^UW_XDG\9?_FTH_X>!_MZ
M?]'N?M=_^))_&7_YM*** #_AX'^WI_T>Y^UW_P"))_&7_P";2C_AX'^WI_T>
MY^UW_P"))_&7_P";2BB@ _X>!_MZ?]'N?M=_^))_&7_YM*/^'@?[>G_1[G[7
M?_B2?QE_^;2BB@ _X>!_MZ?]'N?M=_\ B2?QE_\ FTH_X>!_MZ?]'N?M=_\
MB2?QE_\ FTHHH /^'@?[>G_1[G[7?_B2?QE_^;2C_AX'^WI_T>Y^UW_XDG\9
M?_FTHHH /^'@?[>G_1[G[7?_ (DG\9?_ )M*/^'@?[>G_1[G[7?_ (DG\9?_
M )M*** #_AX'^WI_T>Y^UW_XDG\9?_FTH_X>!_MZ?]'N?M=_^))_&7_YM***
M #_AX'^WI_T>Y^UW_P"))_&7_P";2C_AX'^WI_T>Y^UW_P"))_&7_P";2BB@
M _X>!_MZ?]'N?M=_^))_&7_YM*/^'@?[>G_1[G[7?_B2?QE_^;2BB@ _X>!_
MMZ?]'N?M=_\ B2?QE_\ FTH_X>!_MZ?]'N?M=_\ B2?QE_\ FTHHH /^'@?[
M>G_1[G[7?_B2?QE_^;2C_AX'^WI_T>Y^UW_XDG\9?_FTHHH /^'@?[>G_1[G
M[7?_ (DG\9?_ )M*/^'@?[>G_1[G[7?_ (DG\9?_ )M*** #_AX'^WI_T>Y^
MUW_XDG\9?_FTH_X>!_MZ?]'N?M=_^))_&7_YM*** #_AX'^WI_T>Y^UW_P")
M)_&7_P";2C_AX'^WI_T>Y^UW_P"))_&7_P";2BB@ _X>!_MZ?]'N?M=_^))_
M&7_YM*/^'@?[>G_1[G[7?_B2?QE_^;2BB@ _X>!_MZ?]'N?M=_\ B2?QE_\
MFTH_X>!_MZ?]'N?M=_\ B2?QE_\ FTHHH 5?^"@O[>RLK+^V[^UXK*P967]I
M3XS!E92&5E(\: AE(!!!!! (.17RIK&L:MXAU;5-?U_5-1US7=<U&^UC6M:U
MB^N=3U;6-6U.YEO=2U35-2O99[S4-1U"\GFN[Z^NYIKF[N9I9YY9)9'<E% '
"_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817252432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>QUARTERLY FINANCIAL INFORMATION (unaudited)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_QuarterlyFinancialInformationTextBlock', window );">QUARTERLY FINANCIAL INFORMATION (unaudited)</a></td>
<td class="text">QUARTERLY FINANCIAL INFORMATION (unaudited)<div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table contains selected financial information from unaudited statements of income for each quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">:</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.62583095916429%;border-collapse:collapse;text-align:left;"><tr><td colspan="32"/></tr><tr><td style="width:29%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Quarters Ended</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>288,837</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>275,400</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>275,124</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>247,066</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>241,981</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>236,067</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>236,060</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221,174</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross profit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>142,275</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>130,717</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>127,860</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>116,048</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>115,871</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>111,626</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>109,276</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>102,805</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>47,790</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,552</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,419</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>35,077</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,107</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,626</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,700</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,437</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,790</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,390</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,348</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,552</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,924</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,825</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per diluted share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.15</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.00</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.69</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.79</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.96</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.97</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.95</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares used in computing diluted</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; earnings per share</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,736</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,280</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,813</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,585</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,891</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,528</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,224</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,836</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821274400">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, allowance for doubtful accounts</a></td>
<td class="nump">$ 5,738<span></span>
</td>
<td class="nump">$ 4,647<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</a></td>
<td class="nump">$ 10.00<span></span>
</td>
<td class="nump">$ 10.00<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_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized</a></td>
<td class="nump">100,000,000<span></span>
</td>
<td class="nump">100,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">48,147,969<span></span>
</td>
<td class="nump">48,147,969<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_TreasuryStockShares', window );">Treasury stock, shares</a></td>
<td class="nump">8,839,352<span></span>
</td>
<td class="nump">9,872,505<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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=6877327&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=118936363&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=118955202&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_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823383840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DISAGGREGATION OF REVENUE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">DISAGGREGATION OF REVENUE</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DISAGGREGATION OF REVENUE</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tables below show disaggregation of revenue into categories that reflect how economic factors affect the nature, amount, timing, and uncertainty of revenue and cash flows.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Timing of Revenue Recognition</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,305</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107,912</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>978,515</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,188</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,253</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>98,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>836,436</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>69,167</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,075</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>754,053</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recurring Revenue </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of our revenue is comprised of recurring revenues from maintenance and subscriptions. Virtually all of our on-premises software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts. The contract terms for subscription arrangements range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>10</span></span><span style="font-family:inherit;font-size:10pt;"> years but are typically contracted for initial periods of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>690,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,514</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>726,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>295,193</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>58,308</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,757</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>570,645</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>34,424</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>605,069</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>269,400</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55,932</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>330,213</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>502,018</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>29,477</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>531,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>252,690</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,102</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>309,404</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</span></div><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise Software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>386,115</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>327,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,210</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,018</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,369</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,397</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:normal;">Totals</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:76%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferral of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>993,109</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recognition of deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(931,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate amount of transaction price allocated to the remaining performance obligations represents contracted revenue that has not yet been recognized ("Backlog"), which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. Backlog as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.46 billion</span></span><span style="font-family:inherit;font-size:10pt;">, of which we expect to recognize approximately </span><span style="font-family:inherit;font-size:10pt;"><span>49%</span></span><span style="font-family:inherit;font-size:10pt;"> as revenue over the next </span><span style="font-family:inherit;font-size:10pt;"><span>12</span></span><span style="font-family:inherit;font-size:10pt;"> months and the remainder thereafter.</span></div>DEFERRED COMMISSIONS<div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized commensurate with the recognition of associated revenue over a period of benefit that we have determined to be </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>seven years</span></span><span style="font-family:inherit;font-size:10pt;">. Deferred commissions were&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$29.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$21.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, as of December&#160;31, 2019, and 2018 respectively. Amortization expense was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$17.8 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$15.6 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$11.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> for the&#160;</span><span style="font-family:inherit;font-size:10pt;">twelve</span><span style="font-family:inherit;font-size:10pt;"> months ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. There were no indicators of impairment in relation to the costs capitalized for the periods presented. Deferred commissions have been included with prepaid expenses in the accompanying consolidated balance sheets. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of comprehensive income.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a 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> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817305136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment, Net (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Summary of Property and Equipment, Net</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11"/></tr><tr><td style="width:65%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Useful</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Lives</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">(years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Land</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,653</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,958</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Building and leasehold improvements</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5-39</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>137,448</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>122,241</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Computer equipment and purchased software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>99,435</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,649</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28,506</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,238</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Transportation equipment</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>402</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>438</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>284,444</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>244,524</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated depreciation and amortization</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(112,583</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(89,347</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment, net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>171,861</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,177</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_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=6877327&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6828209248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACQUISITIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">ACQUISITIONS</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ACQUISITIONS</span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2019</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October&#160;30, 2019, we acquired certain assets of Courthouse Technologies, Ltd ("CHT"), an industry-leading provider of jury management systems that offers a fully integrated, end-to-end SaaS solution to manage all facets of juror management, from source list generation to juror processing and payment. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$20.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> of which </span><span style="font-family:inherit;font-size:10pt;"><span>$19.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> was paid in cash and approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$1.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> was accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 28, 2019, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">MP Holdings Parent, Inc. dba MicroPact</span><span style="font-family:inherit;font-size:10pt;"> ("MicroPact"), a leading provider of commercial off-the-shelf ("COTS") solutions, including entellitrak&#174;, a low-code application development platform for case management and business process management used extensively in the public sector. The total purchase price, net of cash acquired of </span><span style="font-family:inherit;font-size:10pt;"><span>$2.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$202.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> consisting of </span><span style="font-family:inherit;font-size:10pt;"><span>$198.2 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;paid in cash and accrued consideration of </span><span style="font-family:inherit;font-size:10pt;"><span>$6.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> contingent upon the achievement of certain financial performance objectives.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have performed a valuation analysis of the fair market value of MicroPact&#8217;s assets and liabilities. The following table summarizes the final allocation of the purchase price as of the acquisition date:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:50.74074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:68%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:29%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">(In thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,983</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,535</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,979</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,417</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Identifiable intangible assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>136,143</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(602</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,879</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,510</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred tax liabilities, net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,125</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total consideration</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>204,168</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with this transaction, we acquired total tangible assets of </span><span style="font-family:inherit;font-size:10pt;"><span>$31.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> and assumed liabilities of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$27.1 million</span></span><span style="font-family:inherit;font-size:10pt;">. We recorded goodwill of </span><span style="font-family:inherit;font-size:10pt;"><span>$76.3 million</span></span><span style="font-family:inherit;font-size:10pt;">, none of which is expected to be deductible for tax purposes, and other identifiable intangible assets of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$136.1 million</span></span><span style="font-family:inherit;font-size:10pt;">. The </span><span style="font-family:inherit;font-size:10pt;"><span>$136.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> of intangible assets are attributable to customer relationships, acquired software, trade name and favorable fair value of an operating lease and will be amortized over a weighted average period of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>11 years</span></span><span style="font-family:inherit;font-size:10pt;">. We recorded deferred tax liabilities of </span><span style="font-family:inherit;font-size:10pt;"><span>$13.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> related to estimated fair value allocations. </span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The acquisition of MicroPact augments our product solutions, positions us in new practice areas such as health and human services, and presents opportunities to expand our business across new and complementary markets. We intend to expand our total addressable market through MicroPact's strong presence in the federal market. Therefore, the goodwill of </span><span style="font-family:inherit;font-size:10pt;"><span>$76.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> arising from this acquisition is primarily attributed to our ability to generate increased revenues, earnings and cash flow by expanding our addressable market and client base. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we recorded adjustments to the preliminary opening balance sheet attributed to changes in accounts receivable, deferred revenue, customer relationships, accrued expenses, working capital holdback and related deferred taxes resulting in a net decrease to goodwill of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$5.7 million</span></span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:21px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following unaudited pro forma consolidated operating results information has been prepared as if the MicroPact acquisition had occurred at January 1, 2018, after giving effect to certain adjustments, including amortization of intangibles, interest, transaction costs and tax effects.</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.51851851851852%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:44%;"/><td style="width:2%;"/><td style="width:1%;"/><td style="width:24%;"/><td style="width:1%;"/><td style="width:2%;"/><td style="width:1%;"/><td style="width:24%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Twelve Months Ended December 31,(unaudited)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,098,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,009,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,200</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,998</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic earnings per share</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.78</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.82</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.65</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.66</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The pro forma information above does not include acquisitions that are not considered material to our results of operations. The pro forma information does not purport to represent what our results of operations actually would have been had such transaction occurred on the date specified or to project our results of operations for any future period.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 1, 2019, we acquired all the assets of Civic, LLC ("MyCivic"), a company that provides software solutions to connect communities. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$3.7 million</span></span><span style="font-family:inherit;font-size:10pt;"> in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocations for MicroPact and MyCivic are complete. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the purchase price allocation for CHT is not yet complete; therefore, the preliminary valuation estimates of fair value assumed at the acquisition date for intangible assets, receivables and deferred revenue and related deferred taxes are subject to change as valuations are finalized. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. Revenues from MicroPact included in Tyler's results of operations totaled approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$63.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and the net loss was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$98,000</span></span><span style="font-family:inherit;font-size:10pt;"> from the date of acquisition through </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. The impact of the MyCivic and CHT </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">acquisitions, individually and in the aggregate, on our operating results, assets and liabilities is not material. In </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we incurred fees of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> for financial advisory, legal, accounting, due diligence, valuation and other various services necessary to complete these acquisitions. These fees were expensed in 2019 and are included in selling, general and administrative expenses on the consolidated statement of comprehensive income.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our balance sheet as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, reflects the allocation of the purchase price to the assets acquired based on their fair value at the date of each acquisition. The fair value of the assets and liabilities acquired are based on valuations using Level III, unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, the maximum aggregate amount of remaining contingent cash payments associated with our acquisitions is&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$6.0 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;and are payable in fiscal year </span><span style="font-family:inherit;font-size:10pt;color:#000000;">2020</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2018</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 7, 2018, we acquired certain assets and intellectual property of&#160;SceneDoc, Inc., a company that provides mobile-first, SaaS field reporting for law enforcement agencies. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$6.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 1, 2018, we acquired all of the equity interests of&#160;TradeMaster, Inc. dba MobileEyes, a company that develops SaaS software to improve public safety by supporting fire prevention and suppression, emergency response, and structural safety. The total purchase price was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$5.3 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On August 31, 2018, we acquired all of the assets of CaseloadPRO, L. P., a company that provides a fully featured SaaS probation case management system. The purchase price of </span><span style="font-family:inherit;font-size:10pt;"><span>$9.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On April 30, 2018, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">Socrata, Inc.</span><span style="font-family:inherit;font-size:10pt;">("Socrata"), a company that provides open data and data-as-a-service solutions including cloud-based data integration, visualization, analysis, and reporting solutions for state and local government agencies. The purchase price, net of cash acquired of  </span><span style="font-family:inherit;font-size:10pt;"><span>$1.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, was </span><span style="font-family:inherit;font-size:10pt;"><span>$147.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On April 30, 2018, we acquired all of the equity interests of </span><span style="font-family:inherit;font-size:10pt;">Sage Data Security, LLC</span><span style="font-family:inherit;font-size:10pt;">, a cybersecurity company offering a suite of services that supports an entire cybersecurity lifecycle, including program development, education and training, technical testing, advisory services, and digital forensics. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$11.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> paid in cash. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">2017</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">November&#160;29, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired audio and digital two-way radio communications technology and related assets from </span><span style="font-family:inherit;font-size:10pt;">Radio 10-33, LLC</span><span style="font-family:inherit;font-size:10pt;">. The total purchase price was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.4 million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">August&#160;2, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired substantially all of the assets and assumed certain liabilities of </span><span style="font-family:inherit;font-size:10pt;">Digital Health Department, Inc.</span><span style="font-family:inherit;font-size:10pt;">, a company that provides environmental health software, offering a SaaS solution for public health compliance and inspections processes. The total purchase price, net of debt assumed, was </span><span style="font-family:inherit;font-size:10pt;"><span>$3.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">May&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, we acquired all of the capital stock of </span><span style="font-family:inherit;font-size:10pt;">Modria.com, Inc.</span><span style="font-family:inherit;font-size:10pt;">, a company that specializes in online dispute resolution for government and commercial entities. The total purchase price, net of debt assumed, was </span><span style="font-family:inherit;font-size:10pt;"><span>$6.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, all of which was paid in cash.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</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 805<br> -URI http://asc.fasb.org/topic&amp;trid=2303972<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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>17
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823512160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment, Net - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation expense</a></td>
<td class="nump">$ 23.4<span></span>
</td>
<td class="nump">$ 21.2<span></span>
</td>
<td class="nump">$ 17.3<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_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="nump">$ 20.8<span></span>
</td>
<td class="nump">$ 2.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=tyl_LathamNewYorkMember', window );">Latham, New York</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.1<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_PaymentsToAcquireBuildings', window );">Payment to acquire building</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.9<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=tyl_YarmouthMaineMember', window );">Yarmouth, Maine</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 19.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_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=118932676&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_PaymentsForCapitalImprovements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for acquisition of or capital improvements to properties held for investment (operating, managed, leased) or for use.</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=118932676&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_PaymentsForCapitalImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireBuildings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for acquisition of buildings (properties) whether for investment or use.</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=118932676&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_PaymentsToAcquireBuildings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-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_srt_StatementGeographicalAxis=tyl_LathamNewYorkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_LathamNewYorkMember</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=tyl_YarmouthMaineMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_YarmouthMaineMember</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>18
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817359392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Financial Information (unaudited) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock', window );">Schedule of Quarterly Financial Information</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table contains selected financial information from unaudited statements of income for each quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">:</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.62583095916429%;border-collapse:collapse;text-align:left;"><tr><td colspan="32"/></tr><tr><td style="width:29%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:6%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Quarters Ended</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Dec. 31</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Sept. 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">June 30</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Mar. 31</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>288,837</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>275,400</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>275,124</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>247,066</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>241,981</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>236,067</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>236,060</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221,174</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross profit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>142,275</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>130,717</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>127,860</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>116,048</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>115,871</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>111,626</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>109,276</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>102,805</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>47,790</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,552</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,419</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>35,077</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,107</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,626</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,700</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,437</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,790</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,390</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,348</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,552</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,924</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,825</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per diluted share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.15</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.00</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.69</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.79</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.96</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.97</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>0.95</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares used in computing diluted</span></div><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; earnings per share</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,736</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,280</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,813</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,585</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,891</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,528</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,224</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,836</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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=118952077&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6843371184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Narrative (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></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>Oct. 30, 2019</div></th>
<th class="th"><div>Feb. 28, 2019</div></th>
<th class="th"><div>Feb. 01, 2019</div></th>
<th class="th"><div>Dec. 07, 2018</div></th>
<th class="th"><div>Oct. 01, 2018</div></th>
<th class="th"><div>Aug. 31, 2018</div></th>
<th class="th"><div>Apr. 30, 2018</div></th>
<th class="th"><div>Nov. 29, 2017</div></th>
<th class="th"><div>Aug. 02, 2017</div></th>
<th class="th"><div>May 30, 2017</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</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="nump">$ 6,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</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="nump">840,117<span></span>
</td>
<td class="nump">$ 753,718<span></span>
</td>
<td class="nump">$ 657,987<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_BusinessAcquisitionAxis=tyl_CourthouseTechnologiesLtdMember', window );">Courthouse Technologies, Ltd</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</a></td>
<td class="nump">$ 20,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</a></td>
<td class="nump">19,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_tyl_AccruedAcquisitionPurchasePrice', window );">Accrued purchase price</a></td>
<td class="nump">$ 1,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember', window );">MicroPact</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 202,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">198,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Net cash acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,983<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets', window );">Tangible assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities', window );">Liabilities assumed</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">76,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Identifiable intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 136,143<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted average useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">11 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liabilities, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (13,125)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred', window );">Business acquisition consideration adjustment</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="nump">5,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Loss of acquiree, actual</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="num">(98)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue of acquiree, actual</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="nump">63,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_CivicLLCMember', window );">MyCivic</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_MicroPactAndMyCivicMember', window );">MicroPact And MyCivic</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationAcquisitionRelatedCosts', window );">Acquisition related fees</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="nump">$ 1,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_SceneDoc.Inc.Member', window );">SceneDoc. Inc</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</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="nump">$ 6,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_TradeMasterInc.Member', window );">TradeMaster Inc.</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_CaseloadPROLPMember', window );">CaseloadPRO, LP</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</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="nump">$ 9,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_SocrataInc.Member', window );">Socrata, Inc.</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</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="nump">$ 147,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Net cash acquired</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="nump">1,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_SageDataSecurityLLCMember', window );">Sage Data Security, LLC</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_BusinessCombinationConsiderationTransferred1', window );">Total purchase price to acquire business</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="nump">$ 11,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_Radio1033LLCMember', window );">Radio 1033, LLC</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</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="nump">$ 1,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_DigitalHealthDepartmentInc.Member', window );">Digital Health Department, Inc.</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</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="nump">$ 3,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=tyl_Modria.comMember', window );">Modria.com</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>
</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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>
</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_PaymentsToAcquireBusinessesGross', window );">Cash to acquire business</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="nump">$ 6,100<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_tyl_AccruedAcquisitionPurchasePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accrued acquisition purchase price.</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;">tyl_AccruedAcquisitionPurchasePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</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;">tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization period of finite-lived intangible assets acquired either individually or as part of a group of 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>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 1<br> -Subparagraph (a)(3)<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.</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 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 23<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e1043-128460<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</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 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationContingentConsiderationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 liability recognized arising from contingent consideration in a business combination.</p></div>
<a 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 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116859824&amp;loc=d3e6819-128478<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 element represents the amount of earnings or loss of the acquiree since the acquisition date included in the consolidated income statement for 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to items of consideration transferred in connection with a business combination for which the initial accounting was incomplete.</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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=SL65897772-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, acquired at the acquisition date. 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.</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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assumed at the acquisition 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 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31917-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 intangible assets, excluding goodwill, acquired at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assumed at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=77989000&amp;loc=SL49117168-202975<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 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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 business during the period. The cash portion only of the acquisition price.</p></div>
<a 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 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<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 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessAcquisitionAxis=tyl_CourthouseTechnologiesLtdMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_CourthouseTechnologiesLtdMember</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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember</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_BusinessAcquisitionAxis=tyl_CivicLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_CivicLLCMember</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_BusinessAcquisitionAxis=tyl_MicroPactAndMyCivicMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_MicroPactAndMyCivicMember</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_BusinessAcquisitionAxis=tyl_SceneDoc.Inc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_SceneDoc.Inc.Member</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_BusinessAcquisitionAxis=tyl_TradeMasterInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_TradeMasterInc.Member</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_BusinessAcquisitionAxis=tyl_CaseloadPROLPMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_CaseloadPROLPMember</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_BusinessAcquisitionAxis=tyl_SocrataInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_SocrataInc.Member</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_BusinessAcquisitionAxis=tyl_SageDataSecurityLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_SageDataSecurityLLCMember</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_BusinessAcquisitionAxis=tyl_Radio1033LLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_Radio1033LLCMember</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_BusinessAcquisitionAxis=tyl_DigitalHealthDepartmentInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_DigitalHealthDepartmentInc.Member</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_BusinessAcquisitionAxis=tyl_Modria.comMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_Modria.comMember</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>20
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831268176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">$ 59,967<span></span>
</td>
<td class="nump">$ 52,740<span></span>
</td>
<td class="nump">$ 37,348<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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Excess tax benefit</a></td>
<td class="num">(29,819)<span></span>
</td>
<td class="num">(32,487)<span></span>
</td>
<td class="num">(40,624)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax', window );">Net decrease (increase) in net income</a></td>
<td class="nump">30,148<span></span>
</td>
<td class="nump">20,253<span></span>
</td>
<td class="num">(3,276)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember', window );">Cost of software services, maintenance and subscriptions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">15,002<span></span>
</td>
<td class="nump">13,588<span></span>
</td>
<td class="nump">9,415<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">$ 44,965<span></span>
</td>
<td class="nump">$ 39,152<span></span>
</td>
<td class="nump">$ 27,933<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=116856206&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=115993241&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=116856206&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_AllocatedShareBasedCompensationExpenseNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 expense for 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>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_AllocatedShareBasedCompensationExpenseNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit for recognition of expense of 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 (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</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_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831125856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Dividend yield (in percentage)</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life (in years)</a></td>
<td class="text">6 years<span></span>
</td>
<td class="text">6 years<span></span>
</td>
<td class="text">6 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate', window );">Expected volatility (in percentage)</a></td>
<td class="nump">26.60%<span></span>
</td>
<td class="nump">26.70%<span></span>
</td>
<td class="nump">28.10%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate (in percentage)</a></td>
<td class="nump">1.80%<span></span>
</td>
<td class="nump">2.70%<span></span>
</td>
<td class="nump">2.00%<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_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate', window );">Expected forfeiture rate (in percentage)</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share-based compensation arrangement by share-based payment award, fair value assumptions, expected forfeiture rate.</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;">tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Rate of weighted-average expected volatility for 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 (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_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=116856206&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=115993241&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822889376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revolving Line of Credit - Additional Information (Detail)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($) </div>
<div>letters_of_credit</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </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_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermLineOfCredit', window );">Outstanding borrowings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_tyl_NumberofOutstandingLetterofCredit', window );">Number of outstanding letter of credit | letters_of_credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=tyl_CreditAgreementMember', window );">Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,750,000<span></span>
</td>
<td class="nump">$ 770,000<span></span>
</td>
<td class="nump">$ 804,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Revolving credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 400,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, interest rate, stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.88%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermLineOfCredit', window );">Outstanding borrowings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Line of credit facility, unused borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement | LIBOR Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Debt instrument, interest rate, effective percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.89%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement | Minimum | Prime Commercial Lending Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Line of credit facility interest rate</a></td>
<td class="nump">0.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement | Minimum | LIBOR Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Line of credit facility interest rate</a></td>
<td class="nump">1.125%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement | Maximum | Prime Commercial Lending Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Line of credit facility interest rate</a></td>
<td class="nump">0.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Credit Agreement | Maximum | LIBOR Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Line of credit facility interest rate</a></td>
<td class="nump">1.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermDebtTypeAxis=us-gaap_LetterOfCreditMember', window );">Letter of Credit | Revolving Credit Facility | Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line Of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Revolving credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 25,000,000.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>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_NumberofOutstandingLetterofCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Outstanding Letter of Credit</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;">tyl_NumberofOutstandingLetterofCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt 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;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</p></div>
<a 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 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6036836-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<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.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</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.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br><br>Reference 2: 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 17<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3367-108585<br><br>Reference 3: 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 25<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</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(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings 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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermLineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</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.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1336-112600<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1314-112600<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermLineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DebtInstrumentAxis=tyl_CreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DebtInstrumentAxis=tyl_CreditAgreementMember</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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</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_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember</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_us-gaap_VariableRateAxis=us-gaap_PrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_VariableRateAxis=us-gaap_PrimeRateMember</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_ShortTermDebtTypeAxis=us-gaap_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ShortTermDebtTypeAxis=us-gaap_LetterOfCreditMember</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>23
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821418448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Total amortization expense</a></td>
<td class="nump">$ 52,800<span></span>
</td>
<td class="nump">$ 39,600<span></span>
</td>
<td class="nump">$ 35,500<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Amortization expense, 2020</a></td>
<td class="nump">54,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Amortization expense, 2021</a></td>
<td class="nump">53,687<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Amortization expense, 2022</a></td>
<td class="nump">49,989<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Amortization expense, 2023</a></td>
<td class="nump">31,838<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Amortization expense, 2024</a></td>
<td class="nump">31,213<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Amortization expense, thereafter</a></td>
<td class="nump">155,005<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember', window );">Leases acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Amortization expense, 2020</a></td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Amortization expense, 2021</a></td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Amortization expense, 2022</a></td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Amortization expense, 2023</a></td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Amortization expense, 2024</a></td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Amortization expense, thereafter</a></td>
<td class="nump">$ 512<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_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=118932676&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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember</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>24
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823589792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Tax - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardAmount', window );">Tax credit carryforwards</a></td>
<td class="nump">$ 4.8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease', window );">Increase of liability for an uncertain tax position</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes, net of refunds</a></td>
<td class="nump">21.3<span></span>
</td>
<td class="nump">$ 6.8<span></span>
</td>
<td class="nump">$ 36.0<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_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Federal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">85.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">$ 3.1<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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=98513485&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</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 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-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_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLossCarryforwardsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-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_TaxCreditCarryforwardAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</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 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-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_TaxCreditCarryforwardAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_UnrecognizedTaxBenefitsPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits attributable to uncertain tax positions taken in tax returns.</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 15A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=SL6600010-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_UnrecognizedTaxBenefitsPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</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>25
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6854175088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<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, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">$ 288,837<span></span>
</td>
<td class="nump">$ 275,400<span></span>
</td>
<td class="nump">$ 275,124<span></span>
</td>
<td class="nump">$ 247,066<span></span>
</td>
<td class="nump">$ 241,981<span></span>
</td>
<td class="nump">$ 236,067<span></span>
</td>
<td class="nump">$ 236,060<span></span>
</td>
<td class="nump">$ 221,174<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
<td class="nump">$ 840,899<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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Intercompany</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<span></span>
</td>
<td class="num">(10,425)<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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember', window );">Corporate and Elimination</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(9,240)<span></span>
</td>
<td class="num">(8,274)<span></span>
</td>
<td class="num">(5,813)<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software | Intercompany</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<span></span>
</td>
<td class="num">(10,425)<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">1,000,845<span></span>
</td>
<td class="nump">853,200<span></span>
</td>
<td class="nump">765,133<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax | Intercompany</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">94,822<span></span>
</td>
<td class="nump">90,356<span></span>
</td>
<td class="nump">81,579<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_MajorCustomersAxis=tyl_RecurringRevenueMember', window );">Recurring revenues</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">726,670<span></span>
</td>
<td class="nump">605,069<span></span>
</td>
<td class="nump">531,495<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_MajorCustomersAxis=tyl_RecurringRevenueMember', window );">Recurring revenues | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_MajorCustomersAxis=tyl_RecurringRevenueMember', window );">Recurring revenues | Enterprise Software</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">690,156<span></span>
</td>
<td class="nump">570,645<span></span>
</td>
<td class="nump">502,018<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_MajorCustomersAxis=tyl_RecurringRevenueMember', window );">Recurring revenues | Appraisal and Tax</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">36,514<span></span>
</td>
<td class="nump">34,424<span></span>
</td>
<td class="nump">29,477<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_MajorCustomersAxis=tyl_NonrecurringRevenueMember', window );">Non-recurring revenues</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">359,757<span></span>
</td>
<td class="nump">330,213<span></span>
</td>
<td class="nump">309,404<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_MajorCustomersAxis=tyl_NonrecurringRevenueMember', window );">Non-recurring revenues | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">6,256<span></span>
</td>
<td class="nump">4,881<span></span>
</td>
<td class="nump">4,612<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_MajorCustomersAxis=tyl_NonrecurringRevenueMember', window );">Non-recurring revenues | Enterprise Software</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">295,193<span></span>
</td>
<td class="nump">269,400<span></span>
</td>
<td class="nump">252,690<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_MajorCustomersAxis=tyl_NonrecurringRevenueMember', window );">Non-recurring revenues | Appraisal and Tax</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">$ 58,308<span></span>
</td>
<td class="nump">55,932<span></span>
</td>
<td class="nump">52,102<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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</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">1 year<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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</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">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</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">10 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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</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">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">$ 107,912<span></span>
</td>
<td class="nump">98,846<span></span>
</td>
<td class="nump">86,846<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">978,515<span></span>
</td>
<td class="nump">836,436<span></span>
</td>
<td class="nump">754,053<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">100,205<span></span>
</td>
<td class="nump">93,441<span></span>
</td>
<td class="nump">86,242<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">92,567<span></span>
</td>
<td class="nump">83,735<span></span>
</td>
<td class="nump">78,388<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">7,638<span></span>
</td>
<td class="nump">9,706<span></span>
</td>
<td class="nump">7,854<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">84,900<span></span>
</td>
<td class="nump">75,188<span></span>
</td>
<td class="nump">69,167<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">15,305<span></span>
</td>
<td class="nump">18,253<span></span>
</td>
<td class="nump">17,075<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">296,352<span></span>
</td>
<td class="nump">220,547<span></span>
</td>
<td class="nump">172,176<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">285,092<span></span>
</td>
<td class="nump">210,740<span></span>
</td>
<td class="nump">164,317<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">11,260<span></span>
</td>
<td class="nump">9,807<span></span>
</td>
<td class="nump">7,859<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">296,352<span></span>
</td>
<td class="nump">220,547<span></span>
</td>
<td class="nump">172,176<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">213,061<span></span>
</td>
<td class="nump">191,269<span></span>
</td>
<td class="nump">180,460<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">185,892<span></span>
</td>
<td class="nump">166,921<span></span>
</td>
<td class="nump">161,245<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">27,169<span></span>
</td>
<td class="nump">24,348<span></span>
</td>
<td class="nump">19,215<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">213,061<span></span>
</td>
<td class="nump">191,269<span></span>
</td>
<td class="nump">180,460<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">430,318<span></span>
</td>
<td class="nump">384,521<span></span>
</td>
<td class="nump">359,319<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">405,063<span></span>
</td>
<td class="nump">359,904<span></span>
</td>
<td class="nump">337,701<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">25,255<span></span>
</td>
<td class="nump">24,617<span></span>
</td>
<td class="nump">21,618<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">430,318<span></span>
</td>
<td class="nump">384,521<span></span>
</td>
<td class="nump">359,319<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Corporate</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Enterprise Software | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Appraisal and Tax | Operating segments</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">$ 23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Minimum</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</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">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Maximum</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</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">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_ProductOrServiceAxis=us-gaap_ProductMember', window );">Hardware and other</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,012<span></span>
</td>
<td class="nump">23,658<span></span>
</td>
<td class="nump">17,679<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_ProductOrServiceAxis=us-gaap_ProductMember', window );">Hardware and other | Products and services transferred at a point in time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,012<span></span>
</td>
<td class="nump">23,658<span></span>
</td>
<td class="nump">17,679<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_ProductOrServiceAxis=us-gaap_ProductMember', window );">Hardware and other | Products and services transferred over time</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>
</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="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_tyl_RevenueFromContractWithCustomerContractTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Contract Term</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;">tyl_RevenueFromContractWithCustomerContractTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_RevenueFromContractWithCustomerTypicalContractTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Typical Contract Term</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;">tyl_RevenueFromContractWithCustomerTypicalContractTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-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_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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: 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=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember</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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember</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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember</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_MajorCustomersAxis=tyl_RecurringRevenueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_MajorCustomersAxis=tyl_RecurringRevenueMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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_MajorCustomersAxis=tyl_NonrecurringRevenueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_MajorCustomersAxis=tyl_NonrecurringRevenueMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember</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=us-gaap_LicenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_LicenseMember</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=us-gaap_SubscriptionAndCirculationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_SubscriptionAndCirculationMember</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=us-gaap_TechnologyServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_TechnologyServiceMember</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=us-gaap_MaintenanceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_MaintenanceMember</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=tyl_AppraisalServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_AppraisalServicesMember</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=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_ProductMember</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>26
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830761920">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of leases assets and liabilities (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </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_AssetsAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">$ 18,992<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_LiabilitiesAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating leases, short-term</a></td>
<td class="nump">6,387<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_OperatingLeaseLiabilityNoncurrent', window );">Operating leases, long-term</a></td>
<td class="nump">16,822<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">$ 23,209<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_AssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AssetsAbstract</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_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=77888419&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=77888419&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_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=77888419&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=77888419&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6829922448">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of future minimum operating rental income (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear', window );">2020</a></td>
<td class="nump">$ 1,341<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_LessorOperatingLeasePaymentsToBeReceivedTwoYears', window );">2021</a></td>
<td class="nump">1,372<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_LessorOperatingLeasePaymentsToBeReceivedThreeYears', window );">2022</a></td>
<td class="nump">1,402<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears', window );">2023</a></td>
<td class="nump">1,432<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_LessorOperatingLeasePaymentsToBeReceivedFiveYears', window );">2024</a></td>
<td class="nump">1,462<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_LessorOperatingLeasePaymentsToBeReceivedThereafter', window );">Thereafter</a></td>
<td class="nump">857<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceived', window );">Total</a></td>
<td class="nump">$ 7,866<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LessorOperatingLeasePaymentsToBeReceived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor 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 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedFiveYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor in fifth fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedFourYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor in fourth year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor in remainder of fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedThereafter">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor after fifth fiscal year following latest statement of financial position date for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedThreeYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor in third fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LessorOperatingLeasePaymentsToBeReceivedTwoYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease payments to be received by lessor in second fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821392608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<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, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information Disclosure [Abstract]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">$ 288,837<span></span>
</td>
<td class="nump">$ 275,400<span></span>
</td>
<td class="nump">$ 275,124<span></span>
</td>
<td class="nump">$ 247,066<span></span>
</td>
<td class="nump">$ 241,981<span></span>
</td>
<td class="nump">$ 236,067<span></span>
</td>
<td class="nump">$ 236,060<span></span>
</td>
<td class="nump">$ 221,174<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
<td class="nump">$ 840,899<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">142,275<span></span>
</td>
<td class="nump">130,717<span></span>
</td>
<td class="nump">127,860<span></span>
</td>
<td class="nump">116,048<span></span>
</td>
<td class="nump">115,871<span></span>
</td>
<td class="nump">111,626<span></span>
</td>
<td class="nump">109,276<span></span>
</td>
<td class="nump">102,805<span></span>
</td>
<td class="nump">516,900<span></span>
</td>
<td class="nump">439,578<span></span>
</td>
<td class="nump">399,377<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income taxes</a></td>
<td class="nump">47,790<span></span>
</td>
<td class="nump">40,552<span></span>
</td>
<td class="nump">36,419<span></span>
</td>
<td class="nump">35,077<span></span>
</td>
<td class="nump">40,107<span></span>
</td>
<td class="nump">38,626<span></span>
</td>
<td class="nump">37,700<span></span>
</td>
<td class="nump">39,437<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 46,790<span></span>
</td>
<td class="nump">$ 40,390<span></span>
</td>
<td class="nump">$ 31,999<span></span>
</td>
<td class="nump">$ 27,348<span></span>
</td>
<td class="nump">$ 31,552<span></span>
</td>
<td class="nump">$ 38,924<span></span>
</td>
<td class="nump">$ 39,161<span></span>
</td>
<td class="nump">$ 37,825<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
<td class="nump">$ 169,571<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Earnings per diluted share (USD per share)</a></td>
<td class="nump">$ 1.15<span></span>
</td>
<td class="nump">$ 1.00<span></span>
</td>
<td class="nump">$ 0.80<span></span>
</td>
<td class="nump">$ 0.69<span></span>
</td>
<td class="nump">$ 0.79<span></span>
</td>
<td class="nump">$ 0.96<span></span>
</td>
<td class="nump">$ 0.97<span></span>
</td>
<td class="nump">$ 0.95<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<span></span>
</td>
<td class="nump">$ 4.32<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Shares used in computing diluted earnings per share</a></td>
<td class="nump">40,736<span></span>
</td>
<td class="nump">40,280<span></span>
</td>
<td class="nump">39,813<span></span>
</td>
<td class="nump">39,585<span></span>
</td>
<td class="nump">39,891<span></span>
</td>
<td class="nump">40,528<span></span>
</td>
<td class="nump">40,224<span></span>
</td>
<td class="nump">39,836<span></span>
</td>
<td class="nump">40,105<span></span>
</td>
<td class="nump">40,123<span></span>
</td>
<td class="nump">39,246<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_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit', window );">Tax Act tax benefit</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="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,750<span></span>
</td>
<td class="nump">$ 25,992<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</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;">tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_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=117327953&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: 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(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<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=117326831&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 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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=116634182&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_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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.</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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(1)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=118930883&amp;loc=SL7669619-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: 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=118930883&amp;loc=SL7669625-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: 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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: 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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: 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=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&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 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>29
<FILENAME>0000860731-20-000008-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000860731-20-000008-xbrl.zip
M4$L#!!0    ( ,&&4U#8+*.#% $! .A% 0 =    8VAA<G0M,#<Q,F-E,V4P
M86$P-3(T,S@S,"YJ<&?LNWE4$VG;/AA$14&(B((&(:T(:"/F55F4)5$1$1&C
MHH @I%U9(J85D  A4?9%2*LMM/!*1 1$P,BN+ D0""Z-["!!R-:*;%+52BA)
MI3+5W\Q\\\\WRYG?OV\X.0>H)??]/-=]+8="_4$MP:P^<LC]$$9# X/10+\P
MZE&,"_K3_]KKGYO\K]Y#0]V"T5^AT;?DF:;&9LP2?0U-?0UU.P:/UKGL?S\!
M\W^\-)9H+EVV7&O%2FT=](3:U9@E&IJ:2Y9J+ENV="EZ- X]CEFJOVS-IIW[
MEQN<.*>U^=K:7;?N%*PP.U#9NNYD+[!E]_GK\2NU#8W6;\"96UANW?:SC:V=
M_9Z]#BX'70^Y'78_XG7JM+>/[QF_"Q<O70X*#@D-CXB\$46/CDE(3$I.24U+
MOWOO]_O9.7\\R'U<^*2HN.1IZ;.JZIK:NOJ7KQK:!.T=PL[7;][V]0\,#@U_
M&!%)9?*_/GV>^#(Y!?[][?N\8@'ZL?A/7QH8S?]N_7_L2Q_M:\G2I9I+M?[I
M2V-)U#\GZ"]=MFGG\C7[3VB=NV:P>=>M%6L/W"FH;%UIMOLDL.[\]5YMPRTV
M4G/PG];^J[/_;XW%___J[+\;^[_Z$F%6:6J@FZ>ICR%A5(_5F'AW-:;5G"1Y
MP#'B2QY07N2TB]/$+TIFFN7\U,"]JAS>&CI'&+@+=&O#:T^-FX&DU%KVJM'
MT-SQ^F<?1VJ'"DO%']]^"P@\VW3OZ,1VY8%G2"I+<(\DN4OZGL4>T5)C5K$3
MU)@?VFQH<Q#\V U9V:O&7$X W-28X\J?58<>8=]QH.M!\!HWY$ZO\B<U1GH'
M8*DQFTZH,7I'T>H.JS%]#J2+>'@7$:O&_(5>\?@F:0=+^H8#N.,7W=QFT)LG
MN[6J,7"2&[QW-[+23(TY_$7U&PMX#9'4F-_*YG'I&/B5&I-BP6K=PIHTP5=A
MD0UXM*Z_U^&!O[JA+6R56:%BOQHC,).H,<@![D#H5LV_)Y"-#]28I7?4F"<1
MS-<DZ"(#K\:\/O4_=L8_\?0_7?RGB_]T\9\N_M/%?[KX3Q?_SUU@87T2LG)+
MTD96*WIPB??A+&PK=OD+4M/9>.[YURU9VE55OQV^]--OK$ZN0@3P4YKTE9>1
M8:(.D)51#(6W,5>K2IC.$$5@:MH[>Z&RSP:/#<:O8_@\^=*PX_ZE%:M')AL"
M\T+"+ER@KM8?%;6NW;KDT3ID>DU<+P*S%G=2X9TLR2/.WTQ.W83JH7C64HTI
MRQ'^KH'PU!C@8/>/@VS8H!#ITI*PD0+%Z<5,2@[I?_KUOF5K3_SWVS0<I,GF
M!/B;8EWX',B2$[*:=@+]4O;-B.C:N?607.A0^SQ-VHV=/-[TJZH8]3V-$9F!
MLL_46"N=PXGU#=F%X2'%DT/#/@LWAOI@QT@U9MDQU;^_T^+KQ37#&0R\T@/"
M*X)37.I X@.POT.-J29U-%NV+HJ3YE>G' 1/.6@'V[,,(K#:5%FL96^3EYR5
M@A@ \Y_JBHI#+;TR/ :L:4_@O6I,PLM:P@8_QEIT8V(^3!]0L2X%>"G^ D*9
M_7J<*P%ZL?Y6CL;<99/(SW;I9O<.<-SP!C1OG1'#D=HP1W+NUO%%'<N,Q690
M*Z4)+^M>1D]HXVWNC_"DM)J: T*N=#;J<%.6R%/K%)!57?0QI"$Y+WK-_;I[
MKLT]7R_6Y3J_NQ+Q8\6R\ZT8O#VSAU]/FE%CE';0L-2GC;QA.M ,)'2RLMA,
M(I;9C>++R:R"<0AZ)Q\-L^B+G:7Y50%1*>?R$'TU1NN+W8VH8=P<&PY["E%:
M8O:]:,I2ME=ZTK:'D"4YLY\ 37E4QQP.>>^=FY)!-&;V\;$,VQ)HN(-5/2$D
MK0CEZ/&V=DCB?)_$1&4U[3Y7:LS1@UT!I^$=-DJ.$6P#VM]FD(I"^>#/0]SO
M8P<KJED.I.IEG+3M),G7N=&[^,Q'V[G*95_XP)]6S^+*9LRD3^SXU??K<R3<
MFNR$MTFS/$O7BKSSI^<_--$LCG8]S>U#E[I4("OC0WLMD171^-83SUAM/35
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
M']N]=933>7,KH703$J+_(S(UDC#S*E#HGY0]T UU@W]C]0-0'R/F5)9SEG:
M8?8*S:%+JA*QFW;$!UC+XJ'R@,L3RXRFF[T_UH0NL%9XOZ;<G#A]K[5+XV/#
M-<IO)$D^+FCV?BD3W53@VA5*E5T1T/;V$EKJ[[ ]*]T[WZJ/X1,%:IV PO"S
M)B"/9>K/,!N,"#M&P(8$[LAIT:<W&)O)P@Q\XJ>^4GW+/_<]MZ,(-51%# UH
M6D(0>4F-$E!BV<W2YRRCRX9/ONH[#[(2X?T2RMJ1=X5447UR9)Q]NZD>>#HK
M3T;2HSH$-CX.C0E#[I3[^E%$9T5-X?LR;U%L/[!:W4A!X@WP:2@3B)4DY720
M1"X=I.6VQ<"P,--+@A=XAG>.8Z#3LM_=HIN,9>RT3(M,B?&<Z9G4CZ%B;).)
M#+\.DA^X-/*<'GLLO*Z1,^J-3T/C7XH:0WVCQ@3I$JFDV]F<ZN%9(QD^R5"T
MYJ.@M+[#D]S*M 'U,N(**]+=?T4V-X.1WT)SH[)O#^-@8(W&[\/R(!@7:Q]_
ME26Y35EFV1/XEF) !OT5J3FR)Z/M#4F=[+^@LO*:\.FJP]W;&\HYV-&6@^Z_
M'NTJ>FA3__;4;]A>2CH+\.G^D(?FYIE1.4$T*@S< 66$H$/?+<ST5\1!*;)*
MP$>665PM(6<XK%,E9Y31O3HXV-INW2]\_1J/#*R^N"3Y^=6O\-;LX]-WW(,7
MEFR[\IQ&O -:SL8!$P(\AJ&E= ^$J++[<P).:C^#P!;<^<+'SIL$=13C;XN&
MDU%K(?IV$F!R(NWJB_WH&;X@._G*I[M3&A8)JF?WH&QKW%#_B?QN8 '1RP=2
MDB/PT.;AV4NQ4FN#8_V?0$MA-PH;H:E=WI&DU5/$K2^A(D N&(X9?[YY"RO$
MLW@RT.3%R_N#I@?KJZ/7-B6?(1TQKXM58R"+SIF<DM&:0U-SGBC00OU'#WQS
MT\^5\@C,/ZLZ:::*@&]_WB'=T_[L_L>5S#.I2S6?0G.HT_92W2%=)HEB)?P9
M-CC7GK\'N@1&*1(&8+-"V#PL5EJ??AG02H\D&$_GF!KU7,F1W;@35DK''VW,
M::^K#L[Q;JBKOA1YX<;0MX\MN9%C1=^1A\KK3#&_F@ ;5$M-V$*QZ)[0@9_H
MM.PI]%C0YCW,- 6BTIJBRTR.(>.?I5?->YS,2J9R:WF9P763:&PAAQG>/Q?-
M>O+A[)BY@EL\.L9T0,>PA?)"4:(,8VBHRJ7 LOL#'%,UYC+M)J>:,NL.&)WH
M\W"5K7#R 1H[U9A:E&\S;*RU@U=%I7B!M)O'&L\]&?4_RB:ESS"VV;TQKTF@
M_<6&U_8K\D$*O-8-T>6#);-2>:;FB=[GMK04<95/:QQN^,P+ZMIFB/V(V8-:
MF5%% 71'2M=.)2?#L2!!0#0!OMZ*-C7'!0D:7V89*KQ^TIJW5KJS6L^P+G)&
M+"64%K[(4?YIHH.TE&&I*B0X.1?!A&&W-HHA/5Z-.3'$H$A'& %2:R,_8"YE
MTV#DG,X4SPSXTR!T,:R87_+A1?J&F3E<MU=]OI!4AI@CO?E&T ELZP(8E,@S
MU^%DYI-ZB$;0,<$A(")W_C-'3C$X,Y6;S"Z"7MET'0AVVA9BFYU61H[D3N6L
ME([9SUCK%3T3G?UXQB42_@U=RD[#ZG>H5?%'(>)UUDVG"=54PLPQR_NG_I :
M('\R[;)6S^RAV X\"YK31VF_=$[T3.0QIX^\'E)\MGS(HG8O.5M^R'?(W:R?
MN9%Q<6#NX-8_<6>L9[9_Y6[)^E>?=7/-MW7Z K.M6AP(-4$^2CM(KA@&2V #
M^7Z2P1/54\2$[D<RA49;?3BKG-S./?YBJO&R#NCZQ,D, L=>DY<'!AL-(;N
MWJH<CR$:]WG0X(6JK!9Q:Q25MJA%>5,_,XM:6:UHYICKBYUH$Z,0ZTV+IB&_
M*BO:>8\6T'UE^'N_G)O%TD7PD^)UW-K92'=H-Z#HE 6QRZ]LIC;.[A8XU)A:
M<0X>/G_H8,.0[1SD8OO:)LYTP[&":(</Y;_*3[[8?=-1P#=E&M"Y<OMV[HAR
M'UA\KY01"+E("2F!>Z DR=,MM%FR+A0DJ^%M3VD1W?]PR?=)P"\0X6SXLL9W
MSK?-//,11WKMPVW/$2M5$5]23JKJGOFWV&0>>QL7U5E!:A%7'ZJ7<'495%2#
MU9B1;[*H=*(!9(5FO@CR\FG$J$?<V7",O2/S^52.'6DU8WUN4DDRQ^?>@2;0
M\,&EYZR@CV>%F7 +*N&#J.-K=4)-0PV_D@^O]>K(C>KL7@GO1C<V#0K%CM0K
M%"^A-T"&G-8VIT6WDBUDU!I3^<M<I<TNLNZD"-T=M%7PKKY?(&K19#8/9S1]
M3LI)(.X9')V9Z A_P KA2R9TK3SZ61*4S>L/*G!Q]W\7U0ZW5/B<NCLTOC50
MC?&^I\B$K,[9JOH?6YT=:W[."0D=7O/9N[ZV/O7AG<U/M41^6O"Z#$4HJ)6T
M!?R3J:\JLF&OZ%;:T4L4#<!<:I.;<@]\I,>&MI'9S5M9#]05R/@FD+'70 VT
MG>%EEU%([Q?@YKL3OH^F.5VS2"D3A6;SC%_6W?']C))CZSG2A3 7!0XUB/%L
MWRF\X5<UYJ*59VB !2U-(5[6%.7\5C1*?R9OR1DW5V,2+:R,P!8@ZZ'</UR:
MI\:L(=[,C7S^:-KLC2J_FN(BY6GW?B_C0/:"%E&S\.$EN](B5NN&7/&Q ?.Z
MM+DKYP99Y_.NE0I"KI_J6AHE:_LS<,L50_E,-A)\854L\R)J4V.8_U@,-/0D
MW"!JP-K0@Z*."@81XDOP(JZ4?_O[R!I+>^)&,*>3G8DS?/I+2.']7YKKZYJI
MS<1)G_?5_/K:AEMW@T_<U)KE)K*H_,1Q1]7O-N)14IM+1ZZX1465GH%&"D-O
M,'$/FMR?,7;B-*&G]-S^MLLSH3/^@CN>SXI3ME^C9V9;5B*OD:'1DOHN/ [%
MG1I3-3'S0T8:"6]EK8M@L9DF8/WLPV+1./*>N(HM(67-4]8R]@U<Y>PG0ZY;
M^FP:J65L;?K['JA0P!<1UX&_]=C&[9E2E$;35I6&F_ E8G@UNY-D&(%*!HRJ
M3;P!XVH]:C<W,MO0X/&9_X0N:#?RQJ4HB)5*0P_N.'V:W"\?R#]8<Q>;ED_$
M!25]S\11A4W-D"OH]W7"H\:?M"J@)F .WFB$3Z<@VH5JS/*9#DDL&WL&:E9C
M0CEI"8+AP)\K!VKQ>O[3NG+R2/E(=T7(XJ&"HJF<W-!C'A]'?:=N^.PJ/NGX
MTOT;1NN["^"E&((H8+UL(9VWU)=.DK,%W/1\?4#O#DA$LXL:LX&G#4U+0P88
M.A73_?3S[]J)&P9ACY*. GIQ;^0'\W["\+X![N>^K[T5\UMG@TP#PE'<^\!K
MS11HB(P/9^P!%CKF1/=.@9PD)@[*Z5B,NGF%X2_E8*",SB%OY%]#5VH#W [U
MS%L15K8^G38T"!V*L2@SO_]11%-0WP2'%36G3U'IERN4&UQ!@BMT!N@E7='A
MI^QF?L ]?Z4\_$4T7BAYY]]HC??MVPQ]DV,-/+4$L7'G/3)C\"EF;2!=ZW3?
ME7FKO+PRZ^W!VYZ-=9=69K,$+,C),0IV*&D9U=928Y)[H TO7J\O1JV "_*O
ML(]KDZW^?57;9=WKI:;!F@M6;>+Z;@%-G^$%10-1)R"R\CBD(V097FDZ%PZ,
M\;8PW_-7,XRD9,- "-_FP,F*;%XRW)E;\0@(S).Y >_O/)V*"4SB4AN.%92U
MAEQ7Z'N:U/[YVP^?5BQD14/3K2NT6U$(3K0M@[ID75H*N\;A[QR1AAFT31[G
MZ =P4F$KTXIP&4T[A&DZ:!UFR]\ <5Q>]$0^=#G>VV1RH>)C46W6AZ;1LC$[
MT<(CU=TF*Z6_.YB@N#G IS[@K8-27/JY3(TI-:;Z-+J78<;MBZ1$&_;*#J"[
M(]<H+9>*71_J-U0;!FHX>91#ST;;H\Q\^=6O $6%M#=$<?C37>$HZ(CH9L0;
M<] \V$J5Y&[]G$R#MG5W'/Z4?,HG/9AS$FQHVB6<>@T>22J\L^%(TY77+?&N
M&-9^2B5GM@O *GY !D:SFY2[0L?-P/JV#!6EW6]Y6L54X'H>D(F\*J=[?_5T
M]']1U>/DN>-AN>@=]>FC:K>A"IO4'7Z^5ZV+LH6NC=R'1!OTLW]!B8HP(E9<
M!\BS 6 !TXZN):&UX]/\N&V455"U#V0L?T7;T116' AE'$M^/R' Q15-I'U7
M604T .PTG[;Q+4U]YX&YM+#OQ?S>><<*%-N'&P98&/XO5IPT$G"4 &WCP&L)
MR J^Y(_(+L<6?FT6-TAY'&GQZZC-+[E6!#OV(!:[)CD&M8<MZQ-F%-YX'<1$
M4'ZV,YRY?88+NRN==_Q^M^L9Q!-:<2-11JMCF#^&=)"5NH!C"Z)?F>(!H'Q*
MHLZ-= I,C?O9#[8X,.\\@O="C44AAK>CHJNLFXO*]=]^@M\<>?VIJ=/B)HG1
M9*R,8UB!;D)6,DMCGIN"K^$(L*:,\S5@TK @"JI4.L,' 4)BTW%D*3 HSH ]
MBT70Q/'^ST!1W:L+TG?&%=[6VFK,Z=K!N7+IW5BKO;(L=Z-GJEI6&"<>_\*H
M-:-;9*"XG=.)([69H,/SG6) %[3RL; GN$;<YH.;_3.&F18MBW-LL\O-JGSR
M151<85N7N;S>.F'R!-5(=.-A=!0U_.D'\^[?D7< 3.N9Y]Q>Y,Z^*F5L:@!M
M*#5S2?T*VA 1'\+<U.NT3NL6[*$D,FP MX09V/J"/, G #3G9D7J1OE"107T
MZAME,3GUB]G/1;'^7W:/COJIPD"QI$3 $;E(NMOG;JHQAM_7.WD"_;*Y6TUN
M$BSN2W]T*&J(0;L\NX<QBO W:X7OO*K/W#O>.[_UWBSN<D7(A:?^N\[ZM4]I
M? YG?L"O\%$<ZV-=42X'+S<#'@%0&&H@,G)M)U*<K*.X4+TW@$\OGXG$8Z=R
M?>)KWGRU'?,Y/GC%UID82] -^2V0GB^+?1WQ,B+$]JXH%)X&?1#M2J4MPUCU
M!-F(="*[@8G.SZHBY@X&B9*FQN@B:R":A'(;]D?OW%KI"Z6K,:<&:D;%>L6%
MC\R%"=A$QK$&Y'YTN=]4[E&1^5_VWNG"T5E\/!Z@F5: CQC[5:6H-;E+V< (
MN"3G)G& P]TB2D CP$Z_\(I'56/2LOU*LN +%X"$-EQMH@+,H&DQ=H)H3O "
MD]M$_F\^HS#CG@(LDI95/,^0[%25O4*%QS)!]A<:J"-(L,$:PBTCL9Z-.,-2
M@87&U)@5GG,=780.!['@M>VM F3XD 5XZ*&DZ\(!T+8CP6+>\NB@]>=T;_<G
M1OIFHV\U5-;,]VA46! 01.0.DB&\4DK"POX )0O1&J?;]<L("<R=C"T@MXVU
M.N0:O*\_,I/2YI"=1Y6I'-[BUP3'C&4E/'L3\ARZ,>'59^JQMP+Y$)0II[@W
M00M MD#.2U+N'H/ZCR3(H]*8AG2V_%B&Q"AZ.3<.&/[G;PRHG-1V&W3^':T3
M$B(C&X3$Q!S\.R/O+BVH+MD_S@[Q9VU0W2-<A0F E>0BRX0&VQ<A_=7(.XYV
M+9;M$]Y%#7GZ,31P6:\WUCATN-Y@/8ZT(AB_VNFT[(=-688P>>B];N!,^PF_
MO]Q@U"NWDIE.] 1%M.J%&G..#^VH3T"I]<@^!A[,\$<EX/ 7'@':!':V\O5F
MU9CS'-/0'-,-D$L11&D?WPE4I CRWC7[M/CD6X/F'WHBG?=-BPV(6[[@BAX'
MN!6T1F!(%?S1$D1[D]*>U;H7-I#PTTBUAB5R]BHZMI-G6P5=0P&ZENXC%:<A
M/WVHSZKU)'D-1K!U0U?3#XR>'*AI'*.0>R/],^UDBVW6=E\^=%VI?Q?U:;09
MJXD6[LZ_U&W([&&N5=V#W2K@?=!NI3ND%!B-[X98 $L^W$9.Y:]P<@%U! [!
M S@UYCC$*H/J!8IQ';"V(SW$X4F]B)#,\"J%XH4FNT]DSQU)VO[\*"61#]RH
M3XM@;V"U[B!=)AO1'4_W-^U_!'$4GU3_9KA)PZ[VA5\KHL80ZP&!7*^T(+1N
M>/6JKI*I&_8WHNYX:G_VH";1A4?2__9@K9WFUW+AC2F AY0$K[WG 2S,]((^
MBO506!G#1974I M4H1YY&#%!AATX:9_XP_/LC6] CP[]+[EOBSE%DW6+2!+0
M?13XW<#]*=VHTW3#,.,(C6'[=))GB4$J2,$LD64+J9ITZXI3G%Q)V$@U=.C.
M=-H ?!,L:@EH&E">C)+)<)/C\=2=P<3UO1$$+>A0YXFA^6USM$]=[3VC<3G'
MJM/E)P8LZRKK\F6D[BX\HA.@W$1GRVA"%( \8X SZR4C9Z"22DGY!/IT<I*9
MIJILHO4T<Q=T00I55'#1-!Z\>/E.I#60/?3W$-6?I%=7_S2PHOW\^[XH<[=I
MB\(G(3&_WUA#^7!&3&1'F584>40N]<&>*_7W^SCJ/V5(VUP9_]4J]MW3PE<9
M5]),VM^6+\WD_)6#K/RU &6&SUAHQ]V;)5'QQ/6W5Z_8\@YH?.JT,?_5W-!-
MTB-\*CKD)\0CL=)A>+<PG>$N8V^$CZG*G2R+Z7)%-&0"=+>@.LP7<M),]0=@
M1WQZ=[H,,'P06A^(!9(?/&H:SIW+9&X:I[NT-AB/B$=" W^*5[S]/+Z#+8F:
M%0.:\IP.L3'R/MLA)YUGC/11]!BD$KI B*]>$))73''TF%O/0)8^.XOSY%SL
MY.*#5^C$MA.6=#N57KHF)R3SMH#L%)MFSYPC0[8FI),7:VD39@J7WEHVEM4Z
MBJ_/N@/>>#_LF=6OT ;&.#/<<T[8D,<CC,V5]:K<\BLS1%.1]$K8]VEC*LGT
MS-1OOC\+3&O#Y+8'W7#QF6SH9VM^.H$E^<2!-E_$+QOV8J7=4&/TFF*O@?[*
M5;N=6-6C](Q.JFR3C+1E'5GW+/TL?+SNM]"?SG19_WG<+YN7.W98:TJ,,K7D
M%:?2_I:7@I4G='";=9:FLD)GZ72J(B@N7.$#=1;Q.ZU#/3T.]E58,S2HL8]:
M8V--BZ)D--VZ>]%/1T/J'"JR^4^F8N*ZWN?%ZHXRXY%N?LW$37[P%YYYA]1:
M4\9*C!0G$AW8TN%V[ K8'[J$!DJ>=0_L'BXEZ-$_"][U.IVY$$3D/I[B&8&7
M4YY-FF[II1SOB?2].A*A.B"=_6I(^NR/Z.WLMYDU5DR@+N/7FLQ=PN%C_1'B
MT39GAW?DZG@KJK^5#C:-5>5<5/2PN>GG2D$8-6SM#< %5_ZK "=,?_H(.VFL
MJ((*C5KP"8'.X%RBC<<[U/#;O>J!=20>-!VZ_2FP/KU6C4E%+*Y)62NF=D*.
M H=CE3*RL:N$:M0,UE46AN2&J7X M$3;S^FV\2/C_\)Z0B3PF]2^\RG/W!/(
M$_H%W99!+F!4)VD)<S,Q9V(=ZC<IR=\^C-*[VXR$OG*M$[WF U>26C/^3!J*
MH%^\<XSZ28U)X0,G.2-\6=1L 4A0: #/X.,YBH?07BG4= ZT;XUAHUED38B?
M?6+3ABBC),O^IC-1\KQ!=JLH.:W,'Y*W54U>_Y(K+(EBVM+OZMAEBQ2.E,_]
MR,H3H)8[.KB_LEJOJC$A_ \X#3#'597#EQ2(3/BH-24$(CW$%= #8$%HC\<U
MD0H#IDR=^Z^&\0A? HU!T[*G4.&,6+\FP*W=<RDXO8#H ,[-C>\B(S]9]K&J
M-']"-Z&6+WE6?B0)#1)ZT"Z7-9B)@ZHLME:Q^_>I8,W%5T[AE#_6H+SLI\9<
M6E"5$ E(IY\EFGF#Q>N17I9&1!YE#<,7"I.01_I1:K(E:4/DXW4]!!OQ.NOA
M%)LQEV/@\K1G?O02077(72APVK]Y0(\;0@NY8#UR=YS4:VW?:6HXQ/"1<30G
M8YJ;Y](8&TKH02?!'0\Q40Z>_-MF0T' XMGW1C.RSXO#!WA-AAF;7B6_*?_Z
M.6L/8>9)'O04].E@B^Y)*/!&-]0HU$$"I1G#"'";70:Z2/DS>"!%2 !RA*9F
M(#YYCG&F()BHK<J.U#T@;KT+11T>+!YJ"KCXBR>9##P1CU3(7EYYSB 53=7Y
MC1>4O,(@94Q=5NL!TB6*R%%Q'>3.>J*6U84CMVSCI+" ^_OE%,@%WBD[[!0I
MC?-I68Q2=&8XV<NPR<R?^QF[Y5W8CH8=]^J][K7E\I(N<<='/$/L[IU[&M?0
M<97I!?C AA.*O=!]I?,4IS9'P%_%' QT4.76>+#TQZFD#4WFRJWPQ6'8K,@7
M<OCL038*M>^=S%TGY.L]D(9(7A)_&GB?'J&R$(F^(HK/)L2^SU.$=V3H)W(B
M*ZAQ#MKB-ANB/,+8"A65PAY0L])['.EAK6.%*DT\/&J!)I(.T\G]'VYC/X>W
M]3+P(:73I!&B<<^CP=% 8*B:]2QP*G]7CQ.YA!XO5^Y8:=WD6 !9PL8KI5P1
MI1W_8GC&YU($$S>-K[Q<\AP9%[FU$W0%A=0+G=_H$Z<'K=&PHXW%44(=[HN3
MYEDIPXHU\,$JJK6C1]_5V5I'#K:XP*YTX]_&^[!?NA7Q*+ ?,;LHU0%S'1%0
M0A%\C8?6U<))R<="1>"]SOP5D %H(.1CB1LA^\X;/GXYZ":ZRIV-/.X=0GH;
M^BO,!W;8Z-K%N03TS^!T1F>).AZIEV/X&);D*:IO[%GK<.!7Q@Y@8E8CLI#9
M:ZH/<C.)2Z'.=@Z&]Q/DTL)9^YV/^;* ^]H<(N5N@)*%[P1#B_*0[)RHF&,I
M,AV5P8FA1S5-',]DF>C]%)VAA>B<Y*UL0FO^%R+F;04VQFQOT+I-NF1-\WLQ
M%+&GP)#Y4Y^/&S#/29[?^O7Q"87RQ*/])?N+/E8?YH]4BI[H_I7XCS6.C_'.
MBU-CED:C][E."?3U"P@,YFC:Q*I,IV+I19RCS0V##,J3LV,?WDX%#LGB"%X#
M-C\N)Q:^"8J-O-K>X93>@C^&=."!DY01#J*]\ASH?UKUQUP32]:U6U*?\9QG
M"A]H!HT$_-5T#1MVJIUW\=_3K;\)Y+9].VI-KHH^:KVR\_Y[,COY\)JYD[<F
MDBX*H IT;(BJ/*(6\QWS9U45<[LOXP+@UD+29+@.,]?3^1TX;AMVG4<9Q&KG
M&4.9<4"&=ZZR510S3G_Q935\M)_&P&-3*VHR,BV^(GNXUE<O]SZ?J75D"\20
MK>F&,"==]/9'ZQHR'[VJ1QO^@^%5E[_AT)L+^=9Z;7LW13JEK7&-N.B4O#3R
M>36B<_$92?)1C1F]<?#NAL>-T*1\]LB0KX6[-/?=*?3:@M"&S-N@AXZ# SDH
M?.VSTZD:=7?_]:O&HDK*AJS(,V%E]#(% XBZS7 %=TOJ*I1G7$O>*7>+X7!H
M&\H%48E$NX>!G6X#$;&$I?#^8<8>AJ;%J_(S4,:^G,/ ^UI9F'%[[CUJS%'#
MF*/]4W;7/$O_"4HE2F-8!UT4'+.-@G.Z)B,G\?',79U%7<#C82%3 SR6@^*U
M$YRNFO)V6(U^V[&EZB5@]9'J\/5>G#2,^%;I6\6[UY%!E;ZJ>#08:6(W/O=C
M)[B0WN2B=&<.\(']G'\>&;!_0H]27%?EV.#C6=7<65WE=O@7R#^NG)X^K'@"
MO2J"?X8"SDE8B3P;D)5N(.AA;'R9%:LI46,,0OR(]V45YR?:%Q>2^LF#WV?M
M.YFXX>^T+VZ(=AZ*L6;HGZ?)O%Y"\X!/AX\A$PM52@DC2D4TR)^9!A]:7W+H
M;F.EHU9#GQ2:0*-?M=8./0GM;A>.=Q\"D:2KGSW&MFV?#W#^!;1/:7)^ZGN3
M64T&Y]JRU9B:Y3G*/6\*Z-.(0>8%Z?L*T/N=+WGE&/]F7FN#:7T1%.3U*D_8
MQIK)B_,;;7<8NE_$:K,G=J_^<Z&7,CI9]672KLCHY?#?<K1$@JJ.%$IB4TR)
MFYFO2?6L>-2,BT>]D)43@+\O9 MF"'&"T;,BAB_PCZ*;0YLGI%PV4VR\O8&3
M&DG 0N=#:OEK]IN\3Y./.4P(Q*LCXHZ<89!+?4/$ Y&8M2=<__N]B]Q $K/5
MF$/6K&0"O-8 (?<K4+!5-ZJ>J#'SUZ$^_L>I_[=3;I*&Q<B*!VK,UCLH("-8
M(X]@?35F@/B6?Z+L[XG_FR-/,8_3M_Z?;\VW1'MX%;1?Z0[O *-:*6R\'FP%
M^D@I635S,_QU$%[H=]:A+J7,?TOOF-]KX$T=U=/E6'.R^$2?;1PQUMG_T*!U
M1:2SQ>*[XW7QGTD/B1N9+1PMWD9ZT $HW.@VCTB?D"PD5GSW0.V9,50*#LNT
MVCDI(@NVM'33/<&X:5,M>*@P6D;"04&N_M0]$7.Z\!'0/K-FJW6YS;1W_U]U
M_>7G$K[^O%43C=LB+<7/*@[J.? XF !5R/FK0AOLA=WQ]C$/)UK5F"R6'IH]
M\:@3,$),=:\/Q9K$'NF%:5+':9U9C[; 356-C;6@T<VFTT:I32NY'9$[!V';
M:*L?]UTDG)F]@(XDJH.\D<'JLZ'I0Q.*5.B>5+6[C6@+*4%JAVBXG9/>D)-0
M0]M6T[WTR^)<JD6<8TO^LKK\%31.*UZOAK(".JD\G6;[T.-P\Z#;J-7T(EKQ
M:S3(\F_YI;1U9Y*6.44]@=BR[K8Y-D( "9F(!422=69$<DQ"8NI>R53GA]M-
M-P60E"=/OP20C*@*7]\I.R:N-Z@*0%*NA1C!9HM7[V^XO^5;MZ@,6=FLW,T<
M8:UC8N#+T$0)?' 0CE9:0\6DC? 2/M#90<9!1F0H3'YJ$+9_;I\>T674EIN5
M5QS:T"1B)SKMW5)%OSOJ5V^W>-;;ZDJVP=CHV;A95PQ#1\Z%+.9F1D&\0@"=
M4T;3G^/3?/@UJ-'BZ+R3L),YJZV9V^C51RL!?@+7FD$.*J-?Q2X-&38<U^+W
M1[YT"I$5E.^HD"J5>4-#)>'7D\<%,QP7QGD5!S8!&\] 'L_IU;[@^,,HP%^F
M6]^!7]8JQ1I3B6O[\<)LA\#"QY,-['2;BIW"AW)':WO/H4AZ>01^K?]4S%(C
MAX0IUDC%,U%(_1!Q$BT4JPQ%B[)%W1\+VKILH77,3?$[(+[=Y!(%:+4OF.Z!
MW**DV#2F#13TE$X0UJ\).<E9%])0?[/64^=,W/D--M8X?_<=D1LJKDSTAUVM
M"#O?X/-P<I($>&)'\MQ5U5X*-<:#E18EKCT#G*X7^'/3<#D=9,.Q40I,K.^K
ML&%!!W? :ZY> +;U7:ZK3I:%TZ2CU!^VE-W^1N_*WIE/,^-/[,,_'-="ARZ
M^8:E30K%9JHQ==C6;BRD1"FR$RMR&%\D93K4"UCIXP[ 7"(C-NJI:/USVV9_
MZ:/!JSS3DC2C$[%L_5%Z5K\@>W&0DUZK2VG/SGDQU3!>Z;R@ ;"1%?W*Y? Z
MU0.B%2(<UX6BY=&DRYQ,YIX>WA;8%?*7$6ZSUCJYGRNGRP\,-QG)#C-<@F36
M'NU<.1D[+@[E8!F;_NLYT(6TB)=S_,J"ZW?.>CBW<YZM/:[5&6BH2B5BOW ,
MG#3!H [<< <G [&&2!;UA-8S1#N&-QC5KB))=8?3;.R!]Z\JZ':"=OOKYIVW
M"; ]ZJ[9[83U[C)QZHU<PZ**25Q4^LR,K>JZ[@%..^O#;@F!3=PSQNQO6&MJ
M#]DK#TWQ].L!K31D%ZP'OJ\&Q!U,1\#UWW75OG2:[-C#DKSN9?"1NMYQX1N&
MXU/Z=!OSI^$FZW7E=@AN\'M>A+Z/R.:XUEO\$M+Y[IN4:K<DHB4]2L)-L>5H
M3?-Q#-=GT+!LKL,=1A=C'1P*/9!7!,U:+ CS[:%:N<></M3?'OA3$I=V*&U'
M0:E'">2G4UH.6Y<$#QWT9Y^ ]@+D5OY2WFJZFR0JV0*T:)1@-:'0T58>O@9*
MD 60.Q?;Z">%71'3)CJG07S:D^8AV"6$6OQL\ATAE6#K.#)SL[ZIL6%_8+,K
M)IK0TGU+O(IT>2Z)J0]M X+:%./:T#F)E8?*L75\3>7+QI?]37N?B*?]\AM5
M[**\D>>6]7WE5^>I3R,:L;8%_1'S=?T5!_Q$K3BH4]C]@2K1$JHQ&<Q5JH):
M3^/V_"6J0J(I%'4*0-T$$38#F?7 J.Q^3OQ\H=E4X(KAR(?+(_O@.$G(<_.[
M"'89[-;K1)$^M/>FS69:>50.LOJQ']!5?,/1()UGW215YZ0S?X:/0"SIV'FE
MG-SIF&?<?9MDZA0K>Q@E(PA9J;LF#4],BG3S*^7\]0&A.4-$'-#UN^'0N"%
M2/FE!]:4OIPMP-DGS;P.&X]26J%#:L^Z3/LP*IOHG$-G0!,UXJFY]NT$T;WV
MO^EB^=="&3F=9PL*.:"9D%9.OQ?([L!EI\@JW$[V13P\/WH*C$K]7)<GL&O8
M<D+PS./\+]0586&/E./IF ,:ZYU);Y;JO_[I[Q5_F;K9_O@A1;F+,S,"=,KL
MVTEI' RY S]2> KJD'F#.1UJS"H8 Q7)V"EB7:(9Q/,567&-4 [1N1OFU>*'
MS9C?^L#G#!AULP:O1<\)V-F^*"R+VQ(J_[XF'?.COX-?19F9D\_=#-RM^H,1
M"? /@#DM:",B9O4Y^=PR>K'<9SCE]A-P>:FJL7R:9P[JE92>A;B^(!I?4Y<R
MM^0)%QIF> 3*FM8PV?K(E_.Q_M373=\D;C,[@0R)7H($NR*8N 5Z(V<O96Q"
MNMB2N7B$ )]%9P_5X1UU/34_(MBZ_O3+6(-NYUD0R+ZW>Y*'Y8-)"^FU-.TS
MT<<AUO%^7G=HC^JA*X;.NP/8"QQ(PN[U<%0"!9SOSG"*E/!U&*3AB  784/M
MPDV2U A '5CJ/&65*(2YY-\<O2_U#3<*Y=BU 1[EDS?J1.^?19;]89LW>ZA/
M1R>6]("X!]W%?_$O<% 34D5#I?4<%\>PX_>Q+I%TWCRV>PA$2=68VXP3P+?]
M=PFZ5(*,A!4%AIH:#EQAN(1?*(*2W88W5SFT^9^=>NPX"LU9Q(\5J#0?WR3:
M0!SE$N1/_$;6127V0YD\ZJ8%A)+!$6 A";8MHK,ZB9N':[%K0KP#5]3650&7
M"XKH2-O"4?#Y QE-1W1F='22N*-R2 +N$E;KC)U<F&U($2VJ,0EHD?7QS#7N
MTMA7\ 4P2O:>*_$D3KL#%HV@0!;8"))\@1N<V)),TSFEX=R9U4)1UU JZ<6<
MT[EGHU-,>WYO47,_M\DC/.S9U.33N+VN&.;Y:1;@3AOQ]U$]:V(IPT9".35&
MB:Q00MJX:4(K;Q=4+2&+[&7\!-L KU;O;+_EG$N2@=X(W1O=;4/$#=4U #?%
M</1H58_DX*O>F7G#J('$^KOS0WC@J'ADE Q,M,]BE;%RI*B4$0RALBJW[Z!L
MI(IK?#K8J^&#8'<&HO,\B[E^A!IH.P3O9U6PV@RDVYI(CSTN %_?^I.7>IKF
MZ7'B"L9"=@6$#.,+?C^NU8XJC1@V6%!04?E)8?S4@RQ%!O-Q(+8=G^R 3__.
MWM@A59&$S)^ H\.\'3T1L^0C?9'3JJ#6>H<=-0O>-V+&J]?'#R'OV\)+SQKG
MN=?YZT2J'O%_H=UDU5K.5 0I-\#7\?IP.+#!AKLB.'<\(0ITZ1@RW0(FYTFL
M/=P&84NMVPQ6<:"(/MJ^9C*F^%9AJ 'E['0(JWS<U^T:-R#T[IM?O\5Q40TO
M*$&$XA41_)'-I _90GDG*KH8"72*J>4?/ UJ4H@_UT)NJ$+U N<A'!9?D](Q
M65*2I!.L/Q5TFJ;?^4N[14WULV-5",J%E?6M^ \D27:*TH'Y/H:6[K07B&H;
M7APOD)*TH'M"WF;P(W,]:PW5'MD\'%83=Z$C)R:[>5UR$3<T-ZO"/.E]2225
M%AW]Z] )4:>5D/GL\4VG"ZW\ZHDV H9Q'GH'+K0Q5_77L#(H-<MR! $DF?CV
MH]UV17(K<J*?::F4GP),F5[,7,--^1YV?O&MYI)#E[,.=[7>?Y18\DZ-J>7
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
MG!S^G(NM)S3,YE'Y>N&IW6S9<+^!LI2F HMSWT&+)5WF&8M>FY]?.5"]@<V
M$>UA'JYN&\',:C$+D[*ST00FN:&/LP-BR72YKY^-5(MX5 8?@5AUT35D)4^N
M&7".[X2 >^L\@]+7'[DC"0E;F5]N7S<T(%T?7.R]SN!#>N![<8?&*7[Q4""O
MH34M.WUC-^<P_U$=G'4U \[=)GCK Z ]_Y.$5Y)#Y!M:_]ZI2G+$1KV\.M/2
MXAFI;_TC8*^E+6$S?6R&[^62I>@1Z#RL6S9>_ L0ZA1*=B5@?YQ"ZE(B8HJ)
MEM'25LDN9#I<ZX-3/@1;VY*AT(PN,,N;T%M.K^VL@0O.VSYT..AI]&(62@YP
MIVS@4!J3U!!"*/S3_%F*,"+EMCZ?ABX65FEGS3.C\]+\8VNMO;C.PRRWGX%2
M+?8Z9NX/&X2Z+GNFY4WN"F@/T;WYOB?>!%DI%4G9@J<!/@D4-#X.(U]!K+\%
M9? %U#=XGKW%S6HD>"H,?F0/S2DE^O'K:(*CNN\_7MD4C33]<CEUF7L=<$W
MN;Q&MC6,E2$G;MG&^%.5A.STGR-5Z:V:4QV??YKP9(M_R\$C.=;3V:I7ZR8N
M:;+<<6C1^C2UM4Y=2XUM5_X7/!)^7IV%W#E-17@:9-F[VJ9=1<*(FX]W-QPH
MQ;$^22</6_ TR;'O^1;C2W1^#0WI :,!O_U]BKY938<]#[T:([5G5R/5]_@1
M!V.#Y">"W&P[8Q$OMSH'/>*1QM7@WB(=7K,"[E_CI:KC94HYZ^,YZV.I'PQ-
MT,Z1N*%.XP@PDW:Z8+C"F*1QF/MH_$Q*[8-D;.%LX6:P;I-N_0R]1*5.EZ &
MV?4%T1II3@QENRU7N1$2JF/4$+'_:YF>M<=P?CJ<6HZ_HNGLI5Z)O_)6G/T7
M_Z!,[[4TOS_UCB_ZKG$']L/Y7C\HN?\Q5>CW<D4T?JQ8.]5[!+O"\6'2M(4A
MK,NI#,?TXKB\0V15CI$!#T6IB9*#VVD2 X]1QK%JZU+=B?CCVM<3+_X,P@,4
MV(9'36$0C<R1#GS7FY-3+D]6%%/LOWOASE:14X?5^*,GA5XA-(G%T2<;8E'"
MMPBQRDS+JVA&A:@?+@RO3"2Q3D2_LO6:YR\$0Z5TR#\J\E]U?<8D(X/#>T*P
MLDD4.D[E>EF93SC9+_Q\QA%BB1?]SB#SQ?NOY?P<+7WUX%<,)<Y5PO'#XY)V
MGT.[BHB: 7G&&E%[-V(5:Y?+^0IGO6 7:YA 0J?ETL3UKR6+DO7$(AOEYM\5
M(?AY 7)=[#I*=#(@_A3L7D3K1""?@=R,+\^W&@<#^AL-Y!X>5_].J>N@/QCJ
M5>Z=CU^.>;K#=<J:Q#V;BK8L=1F"!N'9"GY>UDN0X?/-&UGV9P?M;CPV47XD
M.3N$8D%JD'?6U\F(ITRF<,9JY6@LS"^(V,ZF\.&:,^]>5/%8'3<#?_[5D1 W
M-I4$$3N)WX\_?[#[2']"],L?LQ/)UHGTH'5=D,E^?I1U]^NOH\*+5.G#*4<
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
M=8?,-^L/7%K*W9_*O!GPK@N]/7JO@7LC$_/^!00ZCWF;X)ZN?T:Z5S7AK'7
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
M,E*FY\"*-Y'\!)1_V356R2:-GF:?<[*^LEC8L,'^;I<E 24T8:<(RV0H](O
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
ML,]4FR0M34H>22(!(X*6'58.M5T6L(G%0% S'3DBX_X<D0S>UHEP>^&@SJ#
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
MF0_8(Q0T(]=3_EJ":9/C@$7>@GT;\;;W2-YC$O( E /60//<^M)$C.49V2Z
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
M"*[3+M2*V ^:)\PV,-8&C>CUHCTB1,-. ;PUSJ))QH>9CWG-V'64#90.A1J
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
M;0)#[E?[I_A_?8$%_SXN*[]E:]C4-OU41QVMQ4LH^ @+>S^ETJD*?Q)O_#(
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
MN'H4VF/W%_D[W1 !<5!$0YCJMJ7I=KN&DBQX&+9SI=:?>>LU(-OQ(ONJ#QE
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
MV"E[R8Z)7X<>S-GTW"_%&*5G@%L?=.XUWG8DXD(!XJ)!@E X#(0QY)VUB*F
MP;B15-H6R5J.S%_1+4GMPHQR;E N8;EFJ1MH>$V/[4BP6C%'O4**D92]H@B(
M&.%@FRS5C,7"AJ,/_3@.*LVX!?FDYOUKF[,IR,_P2S6LKJ?7LR]G);LF"V_B
M+(WJ93W[XN0*;.W9Y[\F#^-E_;5RBN,#/\AYO#_C1^MI)F ;CE :%RVQP$FX
M$181Y3@RMB#(2VH"-L%%TR@S[T'QL(@8;X^.Q4 E6" %830%&GB9(K$8<B95
M6'>VB 1+%EDWSWQR%&7MD@(V\I$>T'H8*;9V(>^'E]_J9$)LBN78>:PR4B,*
M%@I$BR!2Z5J")',2.2YQP9@5P713;O/W06ZM,'M\%)>\P=W1W'*TDH$L5RG(
MU!9"@NY #"(AO<(&@>XY*ZA3+1ZQY_'='Q?5M<'MT=%=<@IW1G;+P4K%:+0%
M\T@K)9'!WJ<:R@*I0(,3G&$0#<?NP#\JJFN#VN,CNNJF.UZW'*PDD3JIDJ;!
M"HX()Q2)2"+BP3M#.$N;=.Q>_.,BNA:H/3*BN_P21L$DWW![FKL?JPP%<=;*
M(N6B +P(6R"9\GFQ0@:-(W-&MBAYDL=]?T0DUPJS!_=!+!?Y>58+<1ZE>0SA
M@_7H,?[O,'Y9OTG9ZT*J1;/%'=UDB#(P%:12$07F8TJT[N"'I8A[2@.EE/#B
M@&Z&ILO8)X)P[W%+C;'0BEL4-1C*1< %"BG>#7@JC91I]@**?/1#("M\[CG1
MG/,>NLFZ&O@D=AVJI(X%9[5$3&J;8D!2=:D"_G0^"L4$Q:$%\>7SM1\-\;7
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
MOU,=$^L<@(IP(RDUILQ'+W/0-P3@LI+D>+R;D1B1]PC/4"Z%3^LORTDQN]]
M'HRD63CHYAMKZ*@X-.V:0.,4IZ:,\%5 &RP 4!7%GDK:6B"B^R_C"D1/  TE
M$ON"^ \['$Y*PI$>B080E#%C%@&C$7/*[#5A3 AMK\-%]S[V(P!Q<!F*[[\&
M4H/%6_H'3G+\5=M$4B0A(182&BP>[2FWKJ+):F_'XQOLA]==$6E=1FJ;:50=
M0+6'^.'&":!!YCP,LQ,NF"B&*(8K@Y72#JG=T8-BXQ_<42#IJ(Q59#P1H: _
M/#T]FNEFC<=),'&080"1#-"$$T@@P2OR"##M+Z*CURKI3U7K"ZVV"_G^ODAG
MRW2^GU?M2C[<.E'0<<L8$9PX#*03S/AJSU%$M&=L]#(>/2SE*)BT9-]_IL6T
ME*H@0IM4^5KN'6Z<,,J<E$0KQ)6Q7DKQ:"$00-H?H=%+;,1G7A1(AM*4=D$J
M2_5EN2K22=V;P2^;)H8#C#PF%/B@ <+R62%4;29!Z1]AJ%A$%W='- ;FKP]0
ME+>&Y4S_/EO=FO5RE=]EA?L^F:_+*+<RV3O\K\SD/BT"YXR6(&BX9TK;(/N4
M<!\ WQ\Y%ML1%O1MS]K#,M(C7$.)49E ]?YF1T^#O>)@^P1B1#3#F%@G"-4,
M,E]M@82'7XW'B]+#AA$#DF'97=;'>7HF?LKG=5$XQSL%^Q%R9BE6 $MDB0/>
M5<=H,$%X>W6@MSV@([<.\CX"-$,)P*9Z=%"+;F9UJ_Q)JX0PBY0 %EBLK;9.
M4L0J.K#![96!WL+S(J[M]D ,YAS/YF',KW_-%EF1SH,0JNE=P+J4Z]7L6^:^
MWY?._CH7>:,!$NX0X$QY**@BB'"+Q:,X"S<BWUD?80]]8#2<IKC,PK?*>LPV
M;'OS_+X$93?GRM/PJ++LG$UORGC!R2;_>EEO/'0>O7QI0U+AK0I:5YG!X9"I
M5",*@>.M9:NWC/>H]L;0 +;U_MSEQ6KVK\WE4'Y3Z;K!&-X\T/<NO<N6+TNE
M'?,,G3]2 AEGC&KBE(+04Q(.Z.J$I@"Z]M9&;Z6+(\C(,& -M1&]O]]46=J5
M83J5@W*@=:*@+D,9-*:*8TZ"2F7$CBZFB6@?D]%;!>"(&T5W0 9C=.D=>Q?$
M]?F,3^LB]1T3KXS$DCJ!A)+A3Z-%=>,1R 6H-?M[J^\;D_TQL1E*$AY%M?*5
MS!;K,/>=+)>5 +*;O-C%-G].OV=+]SUH58$OLT5:/&P@"T27D:$!]_F&[%56
M9+4Z28]?313@ A#LJ,)24,VQ56J_XDR'FF6]U?&-*(/C 798 0Z4[-:9#B9
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
M]3X8'@&:$5V3N^5J=K>Y]=^\_7 @S;W_QP0;3_9PJ?+%=)>U<22&X0]0MIP
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
MY]*DM-3W3J'+4.=;\7OH:S:_SAZR8G5$[+"W*R1*>*Z@AE KZS#"WHGMVLX
MF&"PN:'$59X!GZGI/OKQ^><!]9ZWFDT,$T%)\!(9IZBBTBEM&J2<A-W#S9WN
MCS]YG6<  ,=?HX[R67BK>!(F9.:,0$Y!QZ2'!&F^&9F59.HN+.,(=>^BU!O'
MGXDI[UISN3Q!!C&T7&=U5D1XG[O0:FK96SZ!QH4A0VZ(<D0I$19LU'37:3A!
M+X1^J)?#@S*:QM$I"!#D@<W6Z("'0H@32&5CA;(^_.DLX-/O)5U.)^B!R&1N
MQ[V#F"C6 *\)] 81J)'!EA'1($L9%Q-7,KJQ9(S@*-V _3]UAT-XFEK/^V7L
M99@Z;#@?+RDQA#J%E)9AF,0CO1FC$P3^KX3S.5K41X?S.0W8\3975;W,X]W,
M=8^_!;%5UU^^'210:[U$,VVA=U3HJ&9R&G6<9JQ<N>ZW;"\7461,$@T)[CG]
M7ZXC."W.;-OOD]!+S"A'$F$AI3$<^L8SQ&DLCXJU.]"UZXMXL'5%XNS2V_NB
MORJ1*.TL-2;T6"L6=J*,RRWK@$9PFFIP1^Q?2ZX7!N]'AI/2!\<5W7@B^S7
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
M.Y96&X,3?OJNYN5QL4'?*IZ$MULB'-3TH*@A*S4R@&U?]O#+-.]3GUF*Y=F
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
MPJ<L TX?1HVI<7PX%:1-+D;E\JG:8"T^T2IVES\#Z^!9]&W'PY,7UVFU E&
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
MZK4.X]3K].<X&US 5T;X,J1,I4-OEOP5<S5&TCZGN_1[LF7V5R0&84Q<'SJ
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
MUNJB4?X#Y0*E;JNNT^5X%]L >Y?\P%FYWN8E>V3]OJP*:GMEA18$%B)NA.+
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
MZ.9/2G#$J5,G..\0,B@V8PA<BM",\N&-R(QG1%A@$/WC37&7?]^M2!#8GAL
M5C<AWX* O2G;6HJC2+"V$?_^Q.+"D+'Q L,F*2PBY G*BB;>QHD*%V7*!>5
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
MP II5O-<0MR0IC2/=)N] X2@T'TNG)^<9.XAJ;&(5<6\E/#5O1K8$%S?&J9
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
M_=2KLI.$B6=;YR*:R3)F%!;&R:FMI\M MXQ4^2DMLGP3YT7[(_9[U@H3[&
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
M:.D>[QV?."MB<:3\XG2S;VX!^?=]LLT>,CK^*/+V9^T>X8R"<EW+A*:)@YC
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
M*M,35_AXSHO$,4Y-(N<A,T.=.%_;68\3!7EY43:ZMQ?0T$^"V/5#+XW3-/(
MC7M[:0!]1871M&)?9)I"[#*OK-GJ,6\S<[[3#&1S-OUFJ!^ONXX19O1..O=F
MGWJC41 #$I$H=-T()91YKM]?164P9FS(46=E8RH]R<A99^V7"X>R*C>&CTBG
MVEC^ZI3S'MM4UTO/,G7NP),9BN>A5J:<.7O0>2!'\L^Q;9HYR]^+[7VZJ[?E
M0UZ],NUZ@>=&+ 2->?%H=;1/.+R$A6KOK!DP:#D7V+\@6N7?\LV9:J(6*963
MKM'95!.P'I[SG>-S>H#3ZY@,;6?4S"CK\] TLRZ]>DC,.%_ZJ[<+'*<A9#A"
M(2"4803\(-H;BKU$96=6X^-'V:7MCSEH9UXZO.DNU1JE;/@2[=3KLDKKL=+<
MS4-FACCP[OJK(A?2$E)NOHK2AU?%)K^^:V]++P !F&#F @2AQ\(HA+#?=F=1
MD"J5_-$R8#D%^I1_*]??FBD<1R4J-2\;7(HJHD6=I([89DU12?HR!<Y51U@+
M:;HK]6\1=$Y;AO Y$W49Y,)+?1G.AY%)V-$E?< HBGT$^(0O8,P+<$"[:R_4
MQ2Y6>T;#D,V1IV+:]4",<6Q@8F:)7N-SLZF42Y(\W1F:!OWST#?C7JG,T[19
MDU7!OJOO2SGN[RDL:!JF+O0\2+T0I[[GQOV&.G41#I6$;X"9L;2NV%=N59VV
M#>%03MA&HD]-R_;,'>JX'JX)CWVOZ31#9P3+ *WST"@3CI3&FYR1S;PC!10'
M? !C:4S=(*8IP E!O5TO1(F1_3P%>U-NZ6FG9 9H'K3!9XE?<WM\4^5?[_*E
MOM.GP?4\],R@/W+[?=I,R<\V'QZ*_=4HD?-Q#/EFR;OR L9!A!D(0D#=E(:
M)<SO+4: *E4^&&+'<J9U!*U]I?$8G.J\<@";LG/)<8A4G3\^YS"5XM#2?/$D
M06?GB,-IG8=&&?'DU5S0%#O23XF=OMF!4.@S;I%1"/TT8-A';"^$ 5 Z@3C
MC&55^GR?57F'[#^:BFO;)\6;%D,XE!.CD>A3TZ)C4/_17Q7#VVU5?-EMF[<I
MMZ5SDTUZ 4/KSI@!MN<A428<>?DFF2EN%%XF:R>BC>7VB5G*:!C%&$91&"0^
MX&D:W$] $Q\K*9/.YUN6I#TDIQ:8+IS_Y;E_<5WG,:N<;P+@?SG>A>NZXO].
M+?2+)P.[[7U9%?_.5__E;,I-[A1UO<M7R@^:J7,MIV"V:5:3K@/#GUN&&T 7
MSN5YTFP]:?:2F3/:-(3'>8C2( ]>/V8VD V5^5NY.3*3PM 7;[L&)'*]*(I!
M&/9F/$*P4MU,Y0\?8:96;O;JP\7'>R8^K?2<DA\077@ 7<0P[K_;:M&S]Z;%
M*]/J<SZU",A/]*R1KSZ[X[Q/KTDO.7EG0J=%WSS42!_^&U.W 3Q(7QA;K8IM
M46ZR]4U6K"XW:?98;+/UD?5%Z!.:B//I?@+\U(^82W!O.&6>VLVQX>8L:]4!
MH2/>M?R-B\RR!:EX8]4 L7*",S*G:A)T1*= )S2[PW?A',O3R-?TWJ7LC$(9
MY'L>FF72H9<W^$QSI7 1=O>P6V?;O*T;QBT^5OE]OJF+;WF[!RG>ROF8;Z_O
M;K,?"QBFU$>![R=^XKJIAY ?]2@@H$SQ>JQ1V[85[P"WJUJX/ ;LK)LWA3;Y
M5IR'W&8_E&_NFPV$I"A.& -%A3RBOZUP^ QK?QKB%P'WU^8DA(C#[9DXV+K9
MK$+H.?VT%)J9B*DM[U[?C;;(HJS,?LJW6;')5S2K-L7F:WV$BN1WQ;+8+B(7
M!!@&7D)]#Z,4>]2CO6$_2:&*LAHP9UE,>X1.WD%44TL3?,H)Y,A4JFGBGL4>
MG?/+L4QV '\=5P'?9^R,Z!FD>QXZ9]*ATEK35%.SVRK/ZEWU=#3K#EU$ 8I\
M/P2(!8@@-^QW27WFX6BQR;\*8'+ZI6% JI/%;2<[QB+=UWI,_?)<MN7Y7[W]
M+R>ZB(+X(@C]9H$MOHB0?Q&ZX7X1[L7JVX7#O_J8+[=\_%D_J<F>#O%R,F>+
M<2U9VU-]O"(WKHB]YN.,: T@;QXB-<2!TEA#&GJ"8D'"YO 8MP=<'+LI@:0_
MJN_3  "5R\X:'Z^4,NE>=J[?.#<Q]-C$^\3I'I<PRIFU8Q)3GXU0.A,A3>D\
MI&6( ^^>@5#DPE1!\ 6C( I\+P1>$A("4\A\KS>;,M?3K*J@9\RR[+RL3?W6
MP:T+IQ$GLW7 WV=93I5&)5A-H]ZN^SVO8M]GQ,D8L_.0*G/N*!;U5N1)X>S$
M8[ZI,[&QP.WRZ6)1Y>*0*RGJY;KD65J^/T26NAC$#  2N2G#7B!>!?$9C4,_
M)1@#V0JQ)DU:73;I8#E)ON%3Y6T]V4E)!<;.GP8PSOL\.J45SUZ?(;#$GO1D
M9GF?KW;K_/I.K-QL\E77+L5SQ?4!17TK$M=%XD,&(Y[Y>'$8LP"$,88]!@"1
MTJ/<9BU;7C7NP3K7=TX'M^_!3@/8.4+L_-%@/MV?QXB$Y,1ILB HSJEZ_DL3
M_-N97:E0>6[B924D\]!42[Z]G*Y99%"AS,(+RP?#5_P[E]O\H5Y0;C>!*$Q8
MY($4N31F?F\[\ .E0PUF+%K6T;?Z[E'7=?X02)T&JJ)\&B)<3C;'YUI-+HW0
M;*MLP_O,G5%'L\S/0Q4-^_2ZKH-QQA15L*EX(U8_>9HK 'S(?A0/NP>\V>S$
M4;/#-^N;O*(/C^OR*<_Y7Y=-&1SJT11X$4S3U,<LPHR0'AGSH=++*V/@L:R@
M'8SL:Y,+Y1VXYFYUCUI+..W&2$E69Q,>/=$]1M@H[X73>>"T+CS[B=KAR)W>
MBPNG\V,251Y"_/N:/4I89Z7HXWC\MMZ/R/; T: S7GW(MLO[8O/UV?=;0-=W
MS3<781"2*(E#-TG2B(CZ_'QPZG EKJN3+UM$,\5(4)D?"4S&9] X,%%HC(T"
M/7ZG=^#9#^VE7T2S^8E9C 'RI*N/ !8".FO]M^&OG/I;8WJ@]J=EO?V4+\NO
M&W&5=)&&L9=X,:&04L\+/.#B_1HW"Y+4@+XK6AQI/>18M)W'1BW$&3^GVB,U
M(N6J= ^2:XM,&Y-D@7$6,ON<+'4IU21[UG*IZY.<) YB3'I[39Q92;):F#_:
MZJLJWCZ;C;[DZ? C-]F3^!+^GE4KEA55<X@1U_7NX;%)U.D/<7HW7Y'B6['*
M-ZM/V3;G<AV$- 2$_\,"-V0QB.,&=^ EQ,=*KT9-C]:VW'98G*<B7Z^<7PHN
MMOLL^O1MA;F&5G*/;W*@%O<%!?#?O@CDSK%WSI%[SI<GY_CG.A>=QL<+1WC9
M'O1VCOSDV7KGJ;-O-,+7D?<4;8?NW#[D;)K-/ :I&?'Q<K]S/LC4!\<O[^/^
MHH);/";B+6)* L H(5[*$,(1#/ >,/.1^J@X#4S+P^%>XM;%7=Z,AD]Y5M4Z
M ^%$8508 ><?P?D-?;?GJHW;&_&LA.J]H6[:]C&C,6YB(MX:W.80FTFF?'_/
MBZ_W'##^EE=\BO)_RC7_-%&_O!F6 <)A%)$ B_*;U"<X#MS> 0Q<=[*YWS#8
M8XUZW_:P9C03'!CQ"::$XP5[-@-D[[+3^>P<G/[99XEGHSG6=-%,DYK1F#HS
M8FQ.($W&;I(Q]U-1_XM5>7ZYX8-+7F\;W*D+61(0!$E ^ S8]3GT'C>,D-+;
M:-.CM3S""DR_W7%03M&A<BH.:T:CK%Z,)QA<K8=W-F.J\-01KCJ]KS_[4/I6
M[,8:00>UFS_AP#F,#YOCI8%(O3=,;I_6=A:)65G=Y<5V5^4-:@:B.(H HK'O
MNYCZ# 2D1\T'?JE"Q'/!.M8D]&X/:\ 8.1?2WADAYP+3\OCH).?'QZ0;'[N?
M>S8^GA@>#TNR!U?/#X_S;!^K<KD3']S8_E.UDV>>:>53R^/VDCW/I^JCGWOL
MVDO6YE-WHL$T#S4XV7$^E9]0F+_(9E0\"DV:Y/E=DC126-Y(D>;6(*9-D&;'
M1CG/;JNVAO#7LEQ]+]9KO%GQ5(S#+;ZL\_8-Y,.%N=O\QS99BZKHQ(T8Q3X6
M>P4L"%R/)=WF 8,1A4!E0<"P:<NIRU^OK\G?+Z^N'/R1.->W?Z.?G,N/M_CC
M7R^3*^K@SY_I[6>UJ;UIZN7FZ1.RKI94]$";2DT'J-W;Z\_N]0JX3H-WY'N]
M:F2>F05;BLH\IK2VG"M':=EJ>OKBL4"/I-1#":01\5S>AMQ8%.$41N(H89[L
M*[V*GVJO4W9U':>JWB3]MJ4F8?/H+[K@2R.-1K>2TNLZ:TVED4.'2Q&E@0M=
MBJ( !?Q_"*0]@-AC:@_MFC-K.6_XO'MXR*HG<;T-BR+4;?5!\=Z0S#-#UCF7
M7-R?AF[%58BC:DG',/MBM&U])&>R9$&>Q'/+Y>8C,0_1L^'8R0I)AKF33@ZZ
MEP-N\JJ9#A[>%(XPP0G$-&(AH<"%41BVUW!8"A"2+;VJ_?D6$X;^I0Q1[Z%=
M_YLL>3C!SKDT8BBA\^A;P]UXF5J8X47ZU;3-ME@5ZYUXP^%SOMQ5S2!*?RS7
MNU6^8MQ?L>RR:U<AK^]>H7LH=QN.+2$NH"F)(^"E:>0'""<]MC"(E$['CX/(
M<FIR[(13[[UP\LX-1[2D9H&V<Z2IN-!WZ$?>H9L%V@LG:]Q1?(!MG)C*">?\
MPJFFLL\B>7# H<\BF3Z/Y&MIOG#P^4C:><+-!/EG1'S<X,Y#\4?V^>4C<!,P
M+OW80)[5>8V7/.NK\M6EN!2]S#_D#U_R:I$@G_D@!BYE($U3F@9=$8B ($I"
M=_$MK[Z4LF/$$$LJ4G$,2EHQ6G!.UJ$;N0;^:6;.]&,3?,ZC=QKQY&71>V/L
M2&=E#V6U+?[==>*72Z[B,$\2^"&&/"?TTR#R NKU1G$ $K7.--"8]?[4OA:4
M':%LMJ(W]<A'^<[S=&Z4-$/P/#J8*6=>CFLF.9+M9JS8%-O\B@^EK[8UCO'0
MMK5]S']L;[_GZV_YAW*SO:\7$4$H@+S+IVY $6(N\;NCYQ0&*$%JW= R&.O=
M%+_102\<#L)5F[W8#HK<M&5&T5";K[3 ?VN0O][;;:8AAS#1/DS" :?UP&E=
M&%=;A]%]1GM'BN,\M'DL9\M)^HI-;?]'GE6WW\L%@&[L>="/F9^$/B+417&/
M)?&P9U/293%,I^2>3267#H$- ;?!_1BZ+7!SW2[GK-8=M\9$6C56/Z,V*_LX
M2)+U&+6HQ+RQYHL H#BA""?$]>,T%JM4L$>31F%@78NE4$RGQKYU-98+@S4]
M-L[_>(HLH,]>DP5(LZJL%+&?5I?5O!RNS!JLVM-FQKO+ D(0,!2&#'L^Y4J$
M71CT8"".(]O2+ 5B.F4.;"NS7!!L";-Q]D?398%\[K(L,!I59:5P_:RBK.;D
M8$W6X-2B)/.?700>S] !I@EUJ1]C%T'L[<&$,;8NR3(@II-D8%V2I8)@39)-
MLS^>)//?F;TD\Y\U*\DJX?II)5G)R>&2K,ZI'4G&=]N\VB/R,/$!ADG*4<$$
M1E$0A7M$,5/<J[>)9")QWM[G59X)I#8E6C$H-G3:7C3&$.LF0C^'9#\CVIAN
MZX7O9Q1O34\'*?@0=F5E_*8J'_-J^R0>:]GBS4I<3WD4]0+>NL,:$!PF"681
M=-,8P\AER/59Y*>,Y_Q!A%6.M!LU;/GD^LVGZQOZZ?8?S65\^M^_7]Y\H!]O
M+YR/]%9-G\VR+2?(DQ&MIL ]S(OFT:AM<PU_#W4>U^]5F#PCL58",@]-M>-:
M.4*#5E/-R\VR?,AOLQ]OF60!!,"%.,8HYG8#W^OS[00%F"I=/!YDR+(J7GY,
MKS]0YQ;_/VHB.(P\.=$;C3<UD6MA.1S7/!3M'$UG%,P(N_-0+#.NE!9:GV)A
MA&VV;4H_7=^E67W/UN7W>G]-$B#@IP%S72\@J0M]BB,4XL@/4<*"V)=]@G*0
M#7N=:@]+W#(3P)P&V607?\_1=*93&6%W'IW*C"LOK].;XT>V4WW,M\(43SC$
M,UVKY.GW6DS<KGGZP>=IFZ^'"AM[(!&"+G CUPT#%\8DA2GS>B"^SSR5P=^"
M><LI0=/[[IK>UUP!+7NH3K;'^I]JV8*-&,C)W<3TJXD@!]MJ7P]7%+3\12!V
MBLVOSA[T<568J012G=@SLFDQ2O,04YL.EJ.U>&7A;7.HJ[*N%\QS2>3[((I\
M+T@1C */]#9@2%4U5>&3+<NEZ+1%@T99$U7HD98[2\RH*UDW3_I%0/G5P=OV
M3>FFGM*V=&ZR*A^[:L S=L[+D0:+LU$:'>RO142; >F[P*M_[NJM2 ;KVU*\
M+[Y9%NO\F>7;4E7*W!"[@$$?^ES'_"")8QCT4%.?4*6"+5, M*Q61SZ)7ECU
M7CF;O8R)KR]%%O)XE(5T26"Y44W]IHFRG%K./L!JHOLBMGN'G-=JS+_]LR2:
M-H)T1OLG;1/S&$*FI>#E_?GIXR$[H)'\D>MIT<@D__LZ;PJZ;U;'N\(+0!""
M) DC2 B-(P)<Z+:F4S>B'E,9H(P8M#S@'&-L]@./ZUV,JR0R=)U1!J-LSZ.G
MFW6IM-@Z3;QRN A3"F("@@2@)"6N[WE)V!L#H1</?YKP71.6>]O)5U+>*RQC
ME$;)G0C[#"KN0;SU%-_A/8X+YR/O52)KHE-4Z7F;KG-[$</XG8="#75"ZCTZ
M14X4CF5]*VK^^:RL2+G[LKW;K?%R*0K5U0N/)Q\ (4;2*(@B\6Q=D/0F"? 2
MQ6-8^H9L'[OJL8G7E9PU3]=$"3F>!]396OSM:,[RFY-UH,6\-"^^B;4BY;-9
M RB7TZW1V%:<_?7<?=IS=^&D5;XJMH[(DGO5<G[YE'_C<<S6IY_,LW7RZB1O
MYT]:#:=['F)FQI77)ZE,\2/S.N9^6M44#_PD7K"^ON,SKO8 +!\AQ5QL$?")
M5 P)2F**Q,S*HRSJ[;HQD%J&,V?-LL0=EDO6 J53"9B_E7>_[>KFI;F\T;8-
MET"1/<B_0VB(ZO.J-@W+:M)V(+@!Z#0(G>L[AV/LWW;B*)LEK='IE7^H<7R:
M]9Y:-$*WS!.)4H2\,328)W/Z9PH-^U/::G:J2V)W>=74ENT.TW5)2))O\KMB
MNW!I[($$NR@*8L#;!S?J[Q-OP)#::M@P6]87PEIX^UV6[(?SI86FEN,.YE0N
MS1V33K7A8,_DT4G<?7+;P1LYMWV'K+.KBF9HGD>&:\R;5VN))EE2N"%0"<TD
M>?OGT:9"FCT6VVR]WU'@^35.,($X 21Q682\E'4 O" ,E1X*,6C6]E'!>[$X
MUCQ-=G1*L,T0Q!Q_761?BG6S]W+1/A%2B]<FQ),@=W?YDO\4_VM?3[Y9L,PV
MZJ<+389)3ALGBI":3/8@G5]ZF+^*0!VRNP[J9#N[\BR>T4\+H9B'E-IP[/45
M!SO<Z0MLOW)Q6,1:0 #$VD5$7$R!CS&B"/>F49!$BTW^-=OF*UUQU3 IU6GC
MMM,>HU-?S--="#7#K*X:VJ+4I Z^L5XZM?R]IDU)^ :P/E?)&^+2NV(WF"]]
MF=OGL?DSZ]@+(S\-$TQIBE(4IA'HK8=<=X<JG9Y5ZV)W>9@0FY,[389U%<\B
MM29%[S!CSN<D?&^RIZ1]P_B?J_P-].I=!33!FKX(WE3Y8U:L^KE]7S!EL[H6
MI9.Z!W(0\@CT?9?Z$#+,8@3<_H"0%Q$ AVJB$1#6);)#V1_C:6?7I4#H+'>5
MN$G13;N'RJ:9F.BJZ'C!,"FJ?7#Z-4@1FP9PMUDRM;K*L*HDMD;#-%?M->OD
MNU)L@=/AL_";[*D9$6@(_12&8>S1R \H1%'470!*?>@%P;#5355KEA<U]Q/#
MQQ:/J8FW-)E#9]TV>#0[Y;YYA]F1Y]L='*W)MBK9<Y4[;7^DI]EZ3,F<23JS
MCMGL>5\=MB$6)&)<17T?@02PP >$[/>Y?>#32/9DDDF;(Y]/.MJ5D3\M8Y3C
M\PHW);W#=>[R>(NE/4!S-3GA\H>4IB)>[ZB2P0#('%A2(.?$L24;]$Y_>,F*
M5Z7=1FD@1ZYV?!Y_9#I$.( 0)1Y(0^CAR$W]N#?MAWXZ.$U6-6@_4Q:(U <4
MLZP.R)=M$FHJ96XHUE PBUGS"]I4$V==UF><.VN[)),^#^-+7^+2<M/L_O^]
MV-ZGNWI;/N15C^-I$4,:XH!2%L4I(Y%'0DI[%-15N\ELVO989SFK_%N^V0U>
M(AA(M*X CL>Q$2WLX3K?.5ZG!WRQU\:GJ97Q+)]*(FDF,G/52T/>O2N=)EDT
M7VYR 4+?]W 2HAA&$&. (A?V # D:+$MM]E:3D -FE72SCU"Z<XMBM&<*B_T
MK,:DK1*3[_,NIZ<34:XFI1HE)>=:1_*,@%H(Q3RTTX9CVO4B%;D;J)B7FV]Y
M?:)^#_  100F,8D!0C2-@.OU0!CTE*J\63!O.?M\6:"WZ*$:+] [* :#5'0L
M^HVJZ1[T'.JFJ1.K+K FHC1KH37BH)S@FN-2NCY)6^.FOBUQ>P7GY*,L"^!"
MCV$&"?:X59H&XGW8%D  (*3]*:Q;A:(EYJQK'+^ZU2F=N2J:"IBB>N)C![8Y
M[)/W2!6+E1CD7TYLQ^9<[Q&I#J2@N8/IO'A8ZN+YRU(CUS&1)O&,H%J(Q#R$
MU(9C+RN>V.).6S@_9-6_\J:T]>=\N:O:;!GZ,(PH2FD8!@0G*6&T%^T@0"%3
M.[EJQJ;]@ZK\Z_=BZ:Z\<Q[V")VZA?C4Y:J-)P/%4H]S39VT1[8QB3Q = X8
M)U;&MVA3$<5!M,]4#X?Y])X4&F!,H;S=,L]7->,^?\[6XJSJAVS;=//KNS=Q
M)#0E*(["&,,P"4,OP<E>C1,60<6:=X:M6YZU]X#;.;M9;30?"4F=G#0(BIKY
MC'^!MDDB>[QBP)J#A*HR>DY.K45G)M)JS[_7-?:L,JF:>+*R^ES>;;]G5;Y@
MV'5=BH,$Q4&<N'Y"O/Z\4Q#Y*1PP-5<Q,\X<O"M+4/P[7SEU!\U9Y=_R==F^
M,;PL:]W,4HE4M3S2.)'#LD91B;7',TV&>$2(1#ZH0]],)&J(!R=R/7TVM.>W
MR:XN-KDHW?LQ[YYN[+ZS6E"$,:,PX--L!!CVO-CK[R0%!*1@X#1WB&GKL]V4
MJ\V^A%'=K@Y>-$_I\"\VF]Q]<:.!D]U! ="<\UIGWMC4]X#THGGKIG]"%K]'
M_CBSX#-$JDR&3<1C7JIHUK7WIL;F^--(UXXSR.9&YQO;/0O/PP#1&. DB-S4
MBX*(]=6: XHCQ?H?IJU;5]-?^A-<O_*4KCL!*"K+"<#:*9T9XI73O?$8'YX*
M_O)L:OQK=W?]K<WLR9)%&3KE$DFC@9F7G!KW[G0":H%%\\>%%FGJX12&&'G8
MP[[G)A#UA4P 2!$U<,!2Q^Q8!RQW=7M Y:WS0;:.![W/N>EC04;IMGX<:*YG
M@(R<_9$.Q3QTTX9CVF=]%+D;J):LV&2;Y=N'C3S?CV(&$2:>[\88!1'L'T,"
MV(.J+W6;-C_RX<J['JKQPY6#8C!(1<>BWZB:[D'/^'#E&6+5!=9$E&8MM$8<
ME!-<<US*"N^G_+%+EZ_OKL2ZP_5=VCS&M?#YY\8,!V$81!&,<(2BOE8]"$ 2
M:VS8Z!L;9]N&'$WGQ>KHE[*JRN\\'+53;L0ERG+]K:E/PK$W2Z<->#65'4"X
MG)A:)EE+,P^8!&T-JF;U\SQ_5B3Q)#UGE&\XI?,0. -^E*8;F_92)3?='>+C
M-LN'AW+S>5LN_[7 ((@#1AB.HQ32-/;2?8(:AC#UM%<G=0V.>IAQ*P1L5STY
MM7A"5'^+69M=Y25(J[0.7W4\P&L4JP'H- @G6V4\P9C<PN)0NN>A9"8=.KU\
M:(8KK8.*PL[U8[-32W_DU;+@^>$BC/PH 5$(O,A+&'!)%/=EW\.$14JE+(9;
M&_4@8M[!$IVP%G"=LL4[X BB'L>2 C<JO8KZ]OR(8<-F!\_9XYOP/.%;=,F>
M'QQ$]4RTS9P_Y\X'&F!*6]G$#9AZ@4F(F)^&$,1I"'QN>U_9(HQ<'"^^Y=67
M4EO0Y(RH=+-C/ J';S;;JOBR:_M7*V8/C^OR*<\[)=LG&(_\%P?JF22SFB)F
MGM+ARM5@FEBM&@PJ$J5&Y$QU2=&)]\1(AQ/S^PN+$(5! !'!0>*G7I D+MPG
M=S2B)G9C=<R.M1N[+W?SB]B7_54L;K^UMV!K:^%]^DUO*1AEWOI6PESW#XSL
M&TB'8AZ":,,Q[7T"1>YDA5-8%_\7=Y6_9>N\>8>LY@G-<INOFK.)F]7S+QS]
MY$U>%>7J=<&SY7JWXN#ICV7S,.NG;)O3YJ'510@@BH +*!)WH6,6>?O2/6$8
MX%!%?&<&?00!+_8%"5?'!0G;$]Z;5?N7_."DFHC/C$_)@6!FJ.T-)@+Z13N<
M''EPX1R<:[\I&L++KSW[A=9IYXWJEA?.WG6G]]T1SCNM]^,.3N-&]LP -],F
M-H]!<J[DE#^%3(PX6"]("F,44LC10 AHR%C27](* P^CQ6/CYN=M5FU'&('?
MQ:,BI2^AJYVS>FOL=+*M\R7_6FPV0@W+.Z<U\1-)H"U%DP[<GT"@Y'TUJ3>*
M#(\C'Q[&S(TH)"E%#$5> FA?[1WZ411V\D$WDCOO=M&HBT</W(QTY.)AS/]?
M--0#]F<0#6E?C8J&&L.RHL&*3;'-KXIO8EUBR]M_\66=M^] XH>RVA;_;IY*
MZAZ*_)C_V-Y^S]??\@_E9GM?+R" )&(D] )  48X\&GJ,PXL( A3H'2*VS(4
MR_O=ONN[XPK!,+[.*,%(@9B'%(SE;#E)8[<I!O_(L^KV>[F(('$]3!+^#V!^
M''%$28\%>HG46X=V$=CO^MZ<NWY'D[$>KTK[S]C1E7T<U+_U&+78K7ECS1<L
M(C'BNA(1WP\]/\0H<?=H,"*6.[84!OM=VY]]UQ9$F>W<2M3_M-U;S<OA'5R#
M57M=G/$FOV!AX&,W(*XKEAX@0#Y$/1CJ)THOKEN"8+^#!W/OX((GH_U;B?B?
MM7NK.3FX=VMP:K%S\Y]=H"CTO31V$R]!A+F4YQ9^#X:K$+#<N64@V._<8/:=
MF_^LV<ZM0OQ/V[F5G!S>N=4YM=.Y\1WO!GM$U..B$H$XBD.12[A>"/9R$]%8
MZ4*)31R6N_GM?5[EF4 TY\[^C#)C/5XO$#]CM]?T=%#?'\*NK #T!0/3\N%+
ML6FL'ZH&)&D0Q@&-6,H"E_J@^3>+_)2%Q$>>[".2@VS8._/4PW*.<4U6;>,<
M26?ZJQ%NY]$AS;A26FA[@[L4*>KENJQW57Z;_]@FZ^8>J <A0S1.01JEV,,!
M9J@S3OE8K[1P;<BDY9$2I__]^^7GR]O+ZX^?U4Z/FJ)46Z]LLSE<N9P#1.</
M =)I4$ZO8F]0IZ9G0[B?K;(-<NI]C1O.F:S:?5[>YZO=.K^^:^YA)4_I.JOK
M6_%4Q(+P9"7V8$!CE) ()-CW29NR!#A$6&E_?H@=R[K60W.N[[IKA<F3T\#C
M/5$ /-T)S5,J)W%CL:FF:WLBRY[(+[)$6E&S,RR=D3 3W,Y#MXQX4IIO>8H*
MM?M2Y_^SRS=;^HW_ZY;_,OY1U L$D!MA/V$0!,1C*'"QO[=&(E=)G31MV%:F
M/2RGP>4(8(IBI,N>I!"-0)RB"+W%&9\6<E1CR\_;W)R3GH%LSD1VAGKQ4G*,
ML#) ;DCYD!6;1910/T&1%X6>"UT0>\@#O3V*$C10<"2M_)22(\N@MNA8(,^(
M[+2XIA>>%H>:]"AR.EOQ4?7C??G18D93@#[D#U_R:N$3S CV28A3UPN\B'G!
MWE::QFIS,2T+(PO/(,V1)4U+;RSP-5!K_F@A32LS+09YB5&D<9;RHNK#>6G1
M8D3Z@I>8IW6SMJMBDU]N\X=Z@7$ $Q:&,<(1#9$+_)CUMA( J8JLZ%FP+"OM
M\L-^9></ <QID"FNZFCR)Z<P]JE34YB6M5*)-3OWU=XBYHS&#"-R'AHST(>7
M]\8,,"*=N@@CA\*I-U7YM<H>/NZ$K'$(355BO-O>EY5X'?>V3/+##Z\6:9S$
M%$<L]B%PF>\%/@Q[3)$'U!9TK"*QK%DMS*;::0/4R?9(Q9.27W*G.H"]T*KV
M;#E2DGG5;(*DF'\UHGA4'+I#?N$<(M>B=_#+R!UY,'*V-H3L<UG=*$&<AS*/
MY.O++'%$AF65_DH\4II?/^95)MZ(NA(U3ZZ*[$NQ+K9/?17M3[F8)J\$2E;4
MRVPM#D,M(H1#CP&"Q'VE, Q Z-$&D$\(")'2N4.+,.R?+CY]XW=TRN7T>B9L
MJXEU"_K"V<-V&MP7SA[YA=-C%P6S.O1"PUO\CG!@7*W6)_J,4(\0O7FH]!B.
MEJ/W# OZ3';[NZ->S%QQN,1/"0Y1!(CGQ3V*!$+SHJQ@V[X2G[Z /0ZY!N77
M$J\V-9=#;C36X:!GJ+,'1H>*JT9L?B)%U?%.1T:U6;2BG<VUW,@-XLCUTR1U
M(R^-493XK,>1ID!I%=6\=?OZ>?J6^U@$6U!0X]R.HZ$"]HQ5])UR _8B]!,J
MJ9I_0[14@TD;:MI<@T9 G!H,PR2F+/00B(D;'40]4KI88=RX?2T]75!@)'K-
M2ZEQ9D=14H%ZOD+Z3ED':^'Y^614S;T!*JK!HQ41%;=-0>3B",=)"%V$<4IB
MKZL%Q6%X7FA/1&6,VQ?1TX4;1J+7@HB:9G8<$>6H9RRBYR_36PO/3RBB2NX-
M$5%U'DV+Z/-[^\3S:9K&"6'40YC0.(WW@AXDB5(=.SL(+,NI1(&,,>DVJZSV
MF+8MKTU$YBZRLF5+[(;KYY);31\U-7<(HZ:%=Y%B'),X( SZ(0EC[*(DZ,WC
ME"&5%\",&5625_6WNV[%KSCKYK6EQPZ6':%]GUZSVFJ46<MR.D_Y-*"8TD'X
MN412WBU-753DS8@4_KY9%?6RW&VV^8K^6/(?Q0_BOQ:)#ZGK0Q G,/;2   O
M2?=80((6F_QKQG_IUE JJ@U$JD?';8]^A5FI=_^G<\G1\1]2O"AD*0 &E-,N
MZ=9D]!BVT^)V6N STM13W.H*[.!8_01J.]Q'%>DUQ*BL#I] L4A X+D$ %]4
MX TH85Y">FLQ"I6N6>K:L#R?O^'?$Y<&OV7K75.JI=SW[C8+77=(E5_ZUB95
M3CW'X%--'T_KXKC:=X*9,^HVE,MYZ-=@+TJS+4R[]%;^5>2=G_)'441T\_5R
M<U=6#TTEL.2I^^:A$)CK1T@<6HS3T(,18!'SV_NA?D*HZZK=D[*$P;*&/:LT
MU6)S/N7?\LU.W);:K/J,I=RHWHNR%1,YB9M#.-0D\.U(=*"=(]07HAA8_Q-M
M.3!GLCJ'FCR?$53;D9N'X%KW\G2U,8NLR@KVIUS0Q(>$QNSUW7ZXN*G*NV)[
M5=8UXY1U:.K;,N7Z4ZZ+53O/W1=RY".&%S.<IDD$L ]PZ$<].!:[H8I^CP3)
MLIP_]T)(R2&SNMPLRX?<$6VQEX]:W*4\=D1-X\<*HYSDSS"":B/ N>"U/CB_
M""]^/1_#R<<$,X$X,T2,'.EYC!AC.UU.VKO4%X/+ZOFDHU^";J_Q+G/QUL#;
M%\?$D@@+81K0V"5>ZB<P2 %'Z6(4$))@U8,)]I#8/^^E<976(O'RB\'SX%Q]
M4;BLWE@4[L'O*QVT^.=TJ5:;[W<6BNW'<1YJ/I*O;RP<C\6P:>V^_5X*%/4B
M1:)4H(="&D ^D #@NJ"# 1!SE4_D&C5N7Z$UKMB:I=>L*%MAUK8.<]"-[IY>
M$YM4>'M.#6BM<GA^+GE5=T]3435Y-"ZBXGY:"X1P(-0':<!B[#)1N0S'/1 "
MJ=*[E!;,VQ=2C;NVIBDV+*5VV+4NI@+VK.5TSZL)054/TD\FJ1H.ZHJJ+I>F
M955<6&MQ)'[ $^28>CX(","  C_H<;B1Z]M057GK]D55X]*M88+-:JH=;FU+
MJD ]9T7=LVI 4-4C]'/IJ89_FG*JRZ1Q->7_:G$$U$O3,(I10(D? OZ'QWH<
MOH<#*VHJ;=V^FFK<OC5,L&$UM<*M=37E?\Q:37M63:BI<H1^,C55]T]73369
M-#_E[V^=+D+/Q7'  /412?A_B'<P>R"0 *4SN1;,6];3(==O31-M>N)OA6/[
M$_]W S+QO+_'9V3>KQRCGTM9=1S4GO=K<FE:6Q?(94$(W(#0,$T\1H,DZI<=
M0B]R ]5[MD:,*NFHYCU;.Q+Z/I]FA=,HE7;E<IX2:4 8I6/P<\FAO%N:(JC(
MF_3K5OMC6T6YN>%_6SX=3F\AYF'")1:0*  QXXJ;MN5D0 @B/U::CP\R9#E5
MO*F*S;)X7.?-TTW/D"J^=36(33FQ&XU(-8%[!HO+6@/,^:/[<[+#J>?8.J-F
M1DB>AX*9<>7EXUCF^)%6JJR^QYN5^(/^SZ[XEJV%1+ZT'<0L3!*/0!^C),0Q
M!!'J;0,*E>YXF;%H6;L$NN;F5O.7(YR*RF6&74D)&YU812T[Q>F,=$V&PG,"
M9S0$,U$ZLSZ]E#P+C,E?H&JN:(H3]UQYMU6VW/Z]V-ZGNWI;/N352Q!N!!B.
M M</6<HE&$0,!SV(P/<4+TH9-6U9#3NT8AI5?MT4ZAF<::;E!'%"DM64L>>W
MN9'40W6^<ZQ.#W9Z;51C\XQ(6@K+/-32EG.O+A)9Y%!6/W^O\^L[6F^+AVR;
MUPL:4@!<Y,'(9UR?4\A(V!N!A"D]VJ3XT9;UCZ,14]@]'C7Q4Z5)3MPL,J0F
M7B_)F4\V]YRB,XJDR>4\%$<7?&FD/:DIQDTEJOMLGVYX"]KRM$^D?(]B4>ZE
M8%'/3X(4>Z['LSN&$ 2(].81I*F*EA@S:GV]K,79S)'V("^<C[EB43ES+,M)
MT20$JXE4#Y&+DP#YDN*Y*)8LDV>TS'@PYJ%RYMTJ+3=BU;EHG?.?%7-APG.[
M==G8IC\>\TV=MQ 6. D1Y5E<&J#$"T(6^"GH+:<40;4)Z'![UF>=+<2FLQZ!
MY#.D6G4AS@B]LK/.<9E5G6J>(+4#.!\ME.#Q["337!3FH8!&/7HUG33-EJSN
MM?5T;K,?+V66>22(8]^/?1<&$'@0N7%O#C.U=]>TC5A6N*Z8$ >F.J?4ITU.
MQ$9A3$VY#F3-1Z-.T71&F 8S.P\U&NY&:;C%*5:[O,^J/,GJ?)66#T+FVHH\
MC^+?7 4Y&BZ Q;=<I(/==L0B3A!)64#\-/2 FP0L2>%^!]:+E!:X;-BWK%8-
MY-\:S,XQ:,62EC:(EQ.UJ3E7T[N6[B\-W=W1)0=7%?^1O"U:.;7X:=!Y1A=M
M!F<>DFG5PY>5*JVS*2NT?RW+U?=BO6ZL;GGK+;ZL<US7^>M=7H(\SR51B"'T
MH!=[81JP_9HC3)7TU:!9R[+:(VT+!6_O\\HY('9:R&H2:Y)R.66=B&TU07U&
M]"N*YY-4RI-Y1DXM1&0>*FK#L=)Z:U:<%#\\9D4E1OGKBA3U8UEGZ^N[JW+S
M]4H<6GX;2I,D \82@D(:QRD WG['!E&@M#IH!8#MR?0>L]B.%%A_:\!J2:B=
M"$C.O:<F7W%>?L1[Y?2 WXS!?#16A^-SDWJ;(9N'[MIU\>5B@'T^I1<*RKOM
M=YY,BULCG\OUJKE*LKJNFDSM>U'G'[+J7_DV7W59-/%HC% ,.,>AYT+/3WW<
MHR (**U;FK9M^]"TV)=I[WH\/.[$>["] XI+!*8IEUP>F)!MQ:6!#FEWNTV
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
MQT])[6"B9B"YPWTH338=>0G^E*V*TG.#X&#$ATD:)(2F*>)_\0C/?&%OA(%
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
M<?X$H7HC_]#HS$,%;#HHGQV8X5*VQS?7;O+/6VY.W+C!7^IME2VW"Q3#A,#
M#WP81ZZ?IA!S>RY*$?0#Q(CD1%OWX^W-J5M$SAZ2\T</:N2I\PEJSG3 H63.
MHY<-]J(TV\04#^WT=MJ=X2CR?0B" $.&HC0$4>K&O1'L1;'2*1RUC[9]K.;0
M0;2.QRCR)'G>Q1Y%B@=8I-FQ<Q#E&0_G3I;H$38/I= %__+LQQ .5':.KXIE
MOJGS.MNL/I5/V5H4@.AV, BEKH<!2GF2GJ;B.2WQA%9C-$A3(+5]8,B4;=WH
M$#KK#F)3+:;J0<J_>6&"U?.J,@&ABBK3<WEUS.4>G_-'BU!2FDV1*O\@R,CD
MZCWL,9ADE5,1IYEXYX2$ 0KG<UK"A#-OG)PPQI'<X^OMZDUOO#^7%((P9AZA
M7D3YX)("#(/.$ A#5UKH-3]^K-W@=X\*&>/K?0D?@2K-;=N]M*@+M2Y=*D^H
M6Z=-]^5T9?KD'DQ_R]\3LCN0G.FE=J@#I;&&HIY'?\ZK;US*ZP]9L=GFFXP[
MRR7]\^Y+O:R*1]&6>ED/ /5@X'I^S)-W%*:1'Z$> W!3J0)E=BR/E677'>(+
MY^& N<E@ZF/4ZAFBP2#(9^'3\*^9E'_>4__A!?7/  _(T@W&0#UIGR86 W-X
M8S%12>JEF7HGQS?/^/3CD$7?WI@!V&)09O3Z6U:M! 9NL'G^H#,$0TCC&"38
M1S@E+(ZCP\P#N(#(#E&:'V]Y'.I1-5VL%+@&]:BWG3S1;08R,GW?&.I ::QU
M:.Z!7.W/%,;0][PH8<!-8A PG]$@[+L3CN) :Q]$_N/'VPNYTCWFK$.:XJ:(
M';ZT-T9DJ+*[.W(E<?1X 'LSVR71<.#43HDN%[(*TE6GJ?>;M2ER Y\%('09
M"6(O):'G]V8"%BI5R%3^<,OJT>/Y3S7!4.=(3BZLTJ,F%CV4R<Y@O.3BC$YH
MTS8/E="'7QIJ/HJ7X\MZ>WW7&=O;\@(?)# ( *$1"!/H0=;G,P#Q;ZG(A)X%
MRUHA0(FB&)6>9FBR)B<<]@E34X^>J[Y,WU0B\B8O9Y1D&(_SD).!/KR\\F^
M$35A$>\2UGBSZA<,/I?KU2(./01)&& WB'T"J,NHVQD,0Q=)3=4-F+$L,;?E
M-EL[RQ="HZ,S>B2JB(UU_O04IX'5KBIVP!R!; K9>8NA=[5G$*US$J!ACKRI
M0@:XD96BYA[8357>%=L%@,3'D4M<$B0D(30.?=A;"-* 3X!$MY73'I7/51*;
M/03I'M/>=7QLL*A)C!(Y<IIBBQ<U$6DIN3E/B17%./+_C$3HL#0/3=!"7@YO
M(XJKI_F:?_?K7_--7F5KKC1X]5!L"I'T;(MO.?WQ* XQ+1#U700Q\Z(0 Q\@
M$D0'R8FH4C)BR*3M5=86Y87SM<79#+#9,Z1.WD)53%=,42ZY'CL^VXIKM#W1
M?STB^CE(IT,Y\L*M%'/G%G/-4C\/63/MU,M%7QN<29V@/+K=5M[U9=]X6SS4
M_WEY-V[A001AF "*L>>Q$/ I83\G#%V/,NGCE19L6Y;'9]?,^21DV==(%+UW
MNR]O)54J<9Q8G)?+.81!33=?1B ]CD!;8*R!_+I"S\2!4#@4.G% -$^,F@^,
MU(E2=;).'&6P2?OTYQRL>E>.TWC5<OSKQ^;1PNY5PUR\"+7 GJ@6S)(@Q"A
MP&4TC3I+, %1H#+#U_E\RS/]/20^  E,XV:.;Q!R)DT<0M\\<L)!'I3F&I-B
MMQ!'DS[RSOG<8I]B,IS&01S2R(]PS/^=)E%_HIQ;=7V5*>] 4Y9SN09=UU$N
MG$T^\D+0>7+.=1PSK,ZD#QERYF5W,LF16AF/V^Q'9R;ALSFQA.6#!/./1C3Q
M8TKX_\(PZ:TA&+AJ%;UTK:CT)JUB75U1CVWV0ZPUM\\-.[]\:>'].D5=CU<D
MG>E50VF=1W<:[,6;=3V&LB+;@3[FVZ/AC]+42YF/(,;(]["?,H_LAS]($I5<
M3>V3+6=I',PD^=DS$LYT!3VRYM$!-+&7)IJ+6F/OWZJ]R:O/]Z+D?'_D J=A
M2BB(0N*F24P2#X>T-^=% *ED8-I&+.=>^R>H^?CL<*(?^%!1"X"GSUI9Z1*G
M^#G3.P93.H^.,MR-TG!3&]9]DJPNE@L*DI!@!+R YW0L0CCEICI;V$=*9Q/U
M+%CN. T(YY??/Y.FZS1]YG1N99(YN7TW^Z2I+1?OA88#<AI$%TZ#:5J=:2 H
MB(P:C?-4&$4?WI$7'49TM844Z]TV7RUHB/PT3N(P84$:8A>PL#^+@!C"2H7F
M=&U8UI<.AEF%D>9/3V-L4#=<93I4T^I,!T)!:53)G*?6*'OQCMKHL:+^".VG
M?%E^W13_SE>7JWRS+>Z*?-57I&T+@.#-ZJK(OA3K0E16XM_;/>2KIJC>;?YC
MFW!2_K6(XA"Y* 0QPHE'$L"G+<AG$9^XA$D8NTH7N<;&9OM\T]&CI]O[W,G6
M3=/M]BS%5Q[Y;]YG-?]+58BR!?7^1X_>K%YE6\FR2Y/%6$Y+YQQ>-0T^CNS!
M%^?@3/]0S[ZTD=B8/G+(Z3SJJHDZPBFG\6JR%VZ-Q.3<4:V)HC^/06,R[T^^
MBSM%%&0'J?ZI]J/WV6^JDI750W:YN1-_B"\=4  7@X0&40A8X,<A(8QZ'8H4
M4Q:J#$*F;8\XR#Q6I=,@=(H#4K6APSCS<D/#E*2K27^/U#F">B%.]SL-6N<(
M[N3BKLCJ&?&V%9]YB+,U[\IQ6KGN#( ;Y]/N[=,-;^%;KO:4PWH\%,[V$8$L
M"OS0"V.?01?@&+;F S?".%#;2S9FUOKF<H^/=VN!L,G=]A@GJO\N29Y4_F6(
M_WGT7?-NG<R8C/+V7F^MJ^VA/,M?\_)KE3W>%\MLC7\4]8(%Q(W"(/1A0'S
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
M=>@G+A_29GFHSLB^Z]S0X"D,/:U<FHI;I2E0$T'H?B,@U.W^L5SMS]Q*L""
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
M1C;&T>)F1\OM[:K:[C=%_ZHI91BBC&0YBOGW!SBBJ#W F2%?OCY%\]OMR9
MY!T0S7:WV<O$# SZD4RZ,6#'&E$9[5UC!LJ7XL>.<-/^9P$9RU@>(#\F.,T"
M@!$+N]:"-%#*Y'3;L)R&7;,_KC[\<?GQ-^_#Y4?F7>5>=LWHY1>UQ$N;0!VI
ML</=2*T1H+P:U:QJTW,C+3?J;+JH-QI6# J.+BMF'KI[<2[-DX0 QP"0B%&&
MB,]HU&WCIDF>17CQO=C<5-(S2PL(5,;;,5CYF88 [55U/N45W?G8BV9F,?7K
MF>H$#B7^%MWAQH"U:J'2$VHFV)0=Z%\VQ9(+RL\:4=,^OOW??;DI[A8,Y@'.
M&$D A2G$*8%YUK6(XAAT;Z%]D<\RQC0G-7J?/FSV13WA^,3__MM2W )1W7NW
MU<,#'\E;@7:>43Q V,!H-4&S&Z/2B"65^4YH,)RRA\=5];,HZ@]UW>\3[Y3;
M!>0S"8JCD!%,"$MB2F#8H<%^'!@,J2-06 ^K';9F('J/_)?>8S=.'8RNY[G4
MC; &O./&>+9NI4JD-<;J:SJP^[F2WH%ZMCS'N#3M?EZNM[O-OC[P?;7[5FQV
MWY;K=N'NCV++8UUWN/MCL;NZ_V>Y^_:M6+5V_N.1-R2^ZG.QVZWJQA;<C(R!
M'&2Y'V5^SO.*+.@,3&&,9=8.WJ!9MI<K..9->2MJRAJMVJ_+W=;[7IMRX:V+
MG4@K_FK-:%^ \O;<$&\I+/&VO2FOZMJ;[V'#BRMOT"+;6UAD> N+#&YA-91X
M1YQX-2F>8.6PP=40PS_6W[#"R?&N[KV.GK9;>H*@YKN] T7OM[/>5;=U<\UD
M[&_::9^0\/?IO"<9)'=RG1:*,XEU4NB>UU_(,]T#*=TUYTU=WS)QU9N7I1'+
M6?7F=3>SSZKM[O=B]ZVZ6_@LR*$/\I#_00,&**"L:SKF,,:N:^FV._,"UXP+
M6V<8DUWA&DNX&U-CLR8-K7F9X6ODXE<-XNP,?)' +,<P3?,<8I+@),FZZW32
MQ(]2,TM?(S',N_#EQ(+7,(/JRUV&/.+&B+9LH]Q2EU%&I1:Z!G <UD?J3_U#
MK(XTZ8-DVI#[%$9"G](D#VA&:0"B7J(2$$DO6\T)\NTL0BG,YV?UNL12TEMQ
MN.+"4.W@QBZO,:R?^[;EZD?=H?ET;5\[5[:VO#-K=U!8K'DKW4)SZ<6-[B&U
M@&+1$^>60UQPO@.+&T[04#DV*-4F.7BUJOX2=^7FU896^YO=_7Z%;V^K_7JW
MO2YNB_*[J*O/]IN-P  !9$F *0SY" @AQR%RL RDV.?)5P[5)C=FV[8^J>F@
M>9L>VX6W[&SP[JN-=]=:X2W;SZJ5^QIVAEP1\'Q>4,L8>OJOC^C'3^C/-L5=
MN?,^5-OMA=<BGG:VJ43FP"S3CE/<F%U:LJV:HENKB>LGWK,*WD C^9^6FZO-
MYYU8_JPC @\.M=HO(@J2Q =!GB9IE,<@P)S5MG&6(*9R',)0DY9G>CW*KD3Q
M<;GQO@N$1FXD-L6[G(#.0+F:<A[8_MRPS3'R8>XU*)M\6F3738X\K6#*D3>@
ME(;9=T,B31M56>VQ8T2Q+6/=[[Y5F_)?Q=TB84'(_#3*\BC.(HK2A"9=HS[
MJ;X8*C<UM0BV"UK+'N$8U5,G5D?MK'(Z4N7:&3]^G<X)E.V4*&E%TV;81273
M-V90P49R-$:YFMG^(@,8T8A02F(_1JD?)XAV#>8,*IUH'=',3(I5UNC&JY4L
MF?I*98%',RIU.4SA9 K5X%!4)T56W54F54,D5$F+&UE%RNHRF.$L#L>0Y%G*
M&V(I0U$<HZS7PB#+E5[(,=&>98W*GAQ],SNO-$*WG'A-S;2:BK4DNS>=E*!M
M0-M,DNZ&R!FUJ++71;5E[UGJ!V&2YCS+PR!'F*8X8B%I6\1)X">:<J?<SJ0R
M-W+F.(I/93VS2N48'9MYPCA D9QF:1/KG%;I6W)>HT:RHZU-;0+(0,*_-@U
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
ML_O"_RG^46X7*<H#GT4,18C/V5+>;G>=48:R$"N5?.FU8%F#:E">0.4)6)[
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
M'FS&B=,D)BJ]N7OS@G@4CW7_WLP-(/./-^7[,7Y2?!O$\VZ;SC1S8+ZIEI
MOL$> (BM 0RY\MK<RI^L/0XVQ^D<E^5;*J&[GV;%USS@JW_\?5Y>9]@$GJO1
M(O_ZZ"D_C$'SQA+!&2! !&9BP*0US%0)8[5'R,<<<PP]NT4[C"EZ5D%?2TP0
MY"F\93_GGLHE'@(K$")"((@-9P)#6\G"J+MD.G6I^;<D.QKS_N(L_W.YSH]W
M77S.1D589U?ISI]Z?EVT-_5U\;D$4 6(9XBA,KD_UE(R7"%KD+UDSWJ/;!Z
MZOJ[6QJ4'NS-QZ>T'R;9BA73L;HO9HO\7ZN?[R%YG>H)L9RS8+T*9JV3PA)0
MQ>D;(!R,B?\<^A1\6B:]N9O:NK)Z"\<J]RTZ#="4X:[9='Z(F-LK)-0X(BW!
M88^CC04(0DTKZ0B%,8=%0Y\_!T7%5M33WZ%2 &0>^K?EZ'_OL=+N:@D,D!'.
MO34""P$0LEA7DEH2E8QFZ*>6@R)BBTHZ3,?%C\F*8Q"M&19^L/_YE#(_= G%
M%IK5KIO@@(%DEFOI> D*=%Y48@!)8HS& 2;-&@2]NE+.R5*.K)^\U-DTN]E[
M-^- S00X"8E6@)=)[,+7@[AH,\43'^/F'?HQYR"8V8V>^N)EZ&WISLYL]OCO
M9]BL+^+5V)G7;R0)$[_2RC*EB=7 "P[-.I[80$QI3+[!H1^8#HJMG:GL=,1]
M&SS:B+)OJR>,D-),$18H1Y!2W%4OUQC(L8XYW:^_SS[59:4N&'*0A-%*.!W]
M-O-^=BP#M[:0, 6I0(9JY9SAAE,C2"4_)39F8U-_A_U3D; -/9R.A^LGU2MS
M9&V%5 _8U'AIZ)@&$\ZA90@!AQCSRDM.0.7E@L*2F.O!];??/Q5+.U#+Z=?N
M]9L!1RW<Z[J)HPP91JF$3B#L&!=B?5AF$(,XYLK.T$.,3[IF'X?_D4Z>/9*^
M2.2W/1U>PQ82*WP820AQHHG'B%B[\2D@@D[W?.C9L:A;X$\Z?[UZJJ+I%/:J
M>D*YPHQQ#8FA#"H!#)*5Y(C6BV<ZTXWRJ6:Q.!6<CGQ[DS$WXN'>EA+)7/ER
MF?-"&F\%M-2Y"@\'HHZ=AQZ8?!)*MJF-'F/*:KJP6@ER3 A%""I-N62"*46X
M *Q"03$;X_UN?O[\+(?#1<8S-D3[Q)Q[?+ZUI0#;/8TE!!+'+=/22L*Y,X(
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
MU6'A!@H(X 1UDO"-?,9=BHG;"7':@?0M989O!W8"9W_FX(Y74]:?#WN79]/
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
M[7HY#[/H?'Z5W:[>YCP0S+&W7J*]H!P3XHP71#$.F"6;RR.8QFP(AG\,&4V
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
M^<N9(+[1\>3ENV2]$E!X9ZVS$+J4$DCB"@5N_*"I.Z:BL)Q/D;;>V?/0']W
MTC\^Q(X<\-F>\79 R%*?HLH U!8:B)&MQLV);%:HXT)9USTWFMI;K?$?G7>I
MWP==OF>\'90B&"&)G' " ^V4%97_BC.*?TGSK TMFE*N-?2#A93.EK<'78P_
M/Q1W!&TEUT8(I*UC5O#:^.06DISK2A=+H#9"?AXBVA;AEB[F2EM/T?8IQ.I+
MN;A]; X>]3HW>SE8AXUWFG$!F+ .(6HKY4%(FW61?.I%H?N@2F_(MZ20*>^^
M;B.N#UKC\O;/[>KF2^S7[?ORT^;O"-51'IW10C">:D&UPI(C#*R0$OMJ2-:B
MG#+W4Z_JW!>9^H-_J,W+;U?+>8I/CCWW\^_I3X=7KM,O!6BX<-XCH22WB$#
M4'5L))3*2D,P]7+-?6YNG2$^%*\^K&;+]==R=2_%&HJ3U#KZ7I# ><VT21>1
MI4P9RVL/JR (7G,%YC[9U27H?4;QO$LI.8Z$>]7_'B2UE!$*B6 ,:YSN.%8.
M5 &!O&;%J3?G0 ["O;/BX,+R[(E@,3:"8@L\\1I:+X2LHB4%I[)1]JE^XD=[
MY$9+T3T7?"L(^Q3]_E+54>$_>28PSI@!E#K B>;4:F"K<!0)M!VM9,@0PC]7
M?&4W(/9*@-GWTP1X_$S0FJ5"!00QAJ)EQZV,F]B^[Q9D>5^FNC-T0H ,$$?W
M_;[N)J@+ 4$<377W '-(^?M4=/>C1D:,=O)]R4I%;_"/3KK_6)7K5H3;O1BB
MR@V(E1I!3VPJ 6E,/<52/N\KW*CZX$)3FK4!?2B*J9N;[=UVEVOC<11;_/.B
MV(EV>:ONHO4V__?NYP?'>(2,77TB6(54U N,],BI:"Q"SE2M&E";$PO0?'N5
M][1=%I_3@*Z"N",):/15],W1 B''7@O48.<H9,I2BQ03G),J+DMQ;7.B^+.2
M9E\V$3N$?'1R_;4N/FT7K^>?CH5!-7@[2"^@,HXY8C72!CA#JGU#><)S[@==
MK->[1ZJU1G[42,F1TU3V&PDIK!(>:6^H(X0:SB2LCMP-Q[C1OC]T1%!._HI'
M::8\B%]F5@L#N<$<05J=OUBCLU(E7:RB?CXM&D<#M<1]F)G_?[:S^)/5XH>?
M+V?+J*,]3D[QUW*VO9UO'NJ2#[X$'.W>0SZ0!@O"F2T%B:#@2FOO /24<)+T
MSUVJ(>ZA\(V\;B-@TF2):-9 T!("32 V0GI.A*;:P!H!RZ_9GN^-+.4 DIC2
MPE'?M7A?+(J;^(,7 1WWPL5X:XP% GO+F3$0>NB1H6A?$I%Y /6(*LB[XENQ
MW!8^S@Q3+G>]_>=\\\5LUYORKEBY[S>+[2XF;;U.>2YO/\R^'\&E16M!<L^
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
M<[:Z3=>F9\O;G9O\J.1??C@XP[2Q%&G@F:=24<]!U5&+X* )'I\>=DQ=])T
M.O6X>!.7+N:4C:BHE-:>:5_S6&DY3.C Y=Q1;N,6Z03Y2PB$5R:NB%)!@:'0
MWBMCF-J/B&A\E;6]NI!ODT#X\Z =[AAT!_-N?KC%_&Z^;&8+'WTO,$>\X,)I
M#("$"@BL*JV*<.9&*T4]!'/.%?=+B4$[ G;P<,PJLO4D?0Z\$3PP,"[#!,@X
M0DZ,Y+;R&1& \"\7 ]^61=W@VU+GK2]T1"7N$86/6SW'7PJ0)A\/HM92[8A&
MQH :"*)\#C$FYAWIC N=HSI<S&WSFULGWPD.(\PH1]PA:KB*FI^H]#TJD<V)
M],[REUS:DM(5PA=SQ<]" ..:J(A01#OG.&756DF-)3D.V8GY6SI=<OH$>;!#
MHEY2G29/@U48);^%$X8+7+L=*%19Q;;/WL,N(M7IN:9Z'V(8^ +@N:E.08JI
MY1RGJIS0QIF$J@,.ZE!6%;5+3W7:6,S'4YV>!7#+O<UUE.H4*NZLC7:@,LHR
M9:" ]9 9!Z.EGNLUH.Y<037);GH>D+FG0NVSFR*O=-R;B?=&8XVE(I5_BBFG
M<S24"<4;="?O+E <ZT)X']E-M:: >\\$!=I'LF,@;#5RJK(294_5-!I%'>E>
M%D.Q<!^K7]UB2/'*_YQOOICM>E/>%2OW_6:Q316OTB6T^+\TJXZ0LD5K@6!A
M(PS&(VD%=HHA5<USYE563-5T][2.J/)31K&^X1^*EK:(@KNY3[,0_[PH]E%C
M#>]D-WD]0&)UM$7C?">"",>0H558/A-:YQ1(.GMS'?V*8:<\[ '^RTD\P:G@
MZ;8']=@K )4FD-?:AN"#.@&FF!ZZ+:GRL6ZIQA\9U3XA[.XB[.U\LXUB.Z#?
MG]=(, +'99@SYJ6-:S*+YDFELG+.LO+W3EYQZX-$O8M@L$P0)S,^W&<+$,FI
M&Y=72IPC(JZMU%6.76Y,5L+#+-_VI1(H"][Q[^CN[)OUTUY=Z.U;!8UBRI+X
MBU(()=G5=1:I48TN=O4TRO-,SB9U/MNU&  2' $4U7H*F2!>>$3J.I< #.HU
MGLHMW,:\R;N%VU(&P]G[.1GL&E"VFP\$Q6E<3M.!I!9$(9+N %7H>0ERKF].
M-4ZH-P:/(I*!]KPO$5(]6Q>WIKQ+V6B>> 8&W^<>Z@*__?2X0_L-.>4@6^^Z
M_#%UN:HLT6 WS&LX$(X=\L1CAH%%&$'E[M<BC#1CJE%PU<B(Z<<#:[(09;8<
MA ;&28$ Q5H"";G!J,+,X*LN*S@4VYZ[C0:5V)@+U!1K;T]U[<)8:*@AD4)*
ME*X'>>0KJ7K<+.M5[_K^RU)>K6;+S_=U@J*"^)RYZN_9ZF3-ELZ^$8#R6&(F
M-+/(8L,-L:K",6[HO]>S? 8>MAP&E5V?]Y#>I1X?N<)6_WO 5D)K.((&"PI!
M*C$!JCY;E96M;NI\&T'P9;X(>J?-P0"89T\$0+2'C%L0_Z\((9C(6H&P&@U:
M>V.PD[F6HGLN^%80]BGZ/^;+^=WV[JCPGSP3E(Q#9B#JC\X83!SGNB:] UY=
MX<K16GQE-R#V2H#9]],$>/Q,((Y0Z:%A@ L+G. ,T*KO0F==4IVJ\Z<3 F2
M.-CYU6YOBY\\$6C_Y+D &001">T(M$( Q:%QU5@P>U1V^GH(,;XNT84H!@NF
M;(W-P^B6MW\N9LLWL[OB=(Q^#Y\+ AA+%=0 :RZE@-;!>L)*(D:[4ST R5M2
M[+F]-;Y4AN*[N_NZ*'\4Q?M->?.OMU\;W>@_^$X0E%$"-+0$<D.A  Z+:HR
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
M<USG',M.GDJY8C]-HU8@CT2DTZF!7GH^(*N\5<A290#$4'B(Z[$9(Z]Y)^M
MX,<IU KBH>BS6WCWR_#K!D'U+SX?E,),>TJC"B <Y8"@*I<O5CIJ ]<<PMC#
M5M8%R(.M/ZF3[XJOV]7-EUDJG5-^7LWNWFP3Y_<^R[7:;KY$.?P[94?6Q</#
MM\?6J9QVHV6II5/"2\0(\ ABQ&B%E8#DFG6K3/*\9&H/)(:QS.\Z=\+>?SY/
MQ1!->7>W]ZY?JB6."= &6L894\P"8ZHP9"F<I8U<TCVN&:_6ZVUQ:[>K^?+S
MO1OVGDTONV]/K13GM18P1XI!J*FS<2<'$8ZJNI 4WM"<BUUGKP_?BM7'LN=#
MV[;4>&DUZ!7JH;:M#ZMBMMZN?NQ&M%_&;B)(JZ.;TI&W@DO!%,9I 2V66$F-
MO:G&&6'.4:';YJWZ,*Y/J"7)N@-Y4!WHT+1X<B?WSVH?7<R61WU&[5H,6)MH
M9%#BM-+:"69U961(H0#+"4(]^WS^Z;IV.?P;!ON>8ZA_NK9T#\ZK901GNSN
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
ML1,1PA1K&8=%S8$//T;E])1B7>QQ8'R&Y.LF6,A369WA^V'\^PER08MW*WS
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
MX]U&X6Z+O/2F@6\C@@!'P\6O0N"6<_$A8;CCXO7AT!$L3DP^NX_$N?+!IW[
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
M<D]('#W^%KA^?.7#\T<$PX=L#[$%I0M#64OJCLNW:GC[0MZ^?B1AF]AZZXK
M/3!SF;8='V^=$-;A]/NG:74(_>JLAM-ATXYIW@\.MRF..!U..V350L?=[Z?L
MDXL=7]<J^A*%.HYN/$=O?2!"YYGM\X2"SED[#F>M;>S=-#^MX^?]V2-MX^4F
MF2(='^\O&-Q*N[I)$>'.KCXMJ.W ;W]*O.F\\(9J]R07^YTV]X\+4(YU7[\#
MLGW'_MO"U\T-^W<\?=#X:"N=E88'24_9?^EW2=]=TO<1EMEOYMNN2N5$%[ZK
MIVSODG=M"KHV!<?%L5V;@B,QJ0Y9C'0,'-O5K#>VCJ[S!KJF6\=C'G36;%>N
M?)0P>]H6@MKEQ+<P$>UPL>_#]WA^$4>?$/N=Y&)WW1:./2NC@[2N\*$K?#@-
M?NY2C;I4HR/EZ9-BSXY5C@W^6F6P-A<#.V/U!!FU8YHC]'".D,^.S\WI.+LK
M&6IU<*HS9+LNH&VH^>[XN&NC=#H50AVW=T5Q)\;RG27>M:EIE\G2<7370*PU
M>5LG:I'TNY#QL8'?X3-7^UU23#NCQ0<!P<;P\TDQ9\<J[PI]7=;KL6\L= K^
M\'&JXX+4HP]1=9C>165/C.4[E.]B6%T,J]U\W"7U=DF][>7N+HNM!<YFA]Q=
MP7BWV%V_B^.S.3O5W!73MM+F[%1R5P[4N@W>#JV[DHG6Y!]V"-TET[:&F4\9
MF=67=_ \!B9L:EOWPV>?%A:^.XC@"#H-=QS["JCJVKH?NM]P'5D[[MW0F?W$
M6??0)VET?-L=_W)T3'O(YN['R[&GQ7$GMN3=.13-M L[J.K.^CD2#_R$,?9*
MI*>*9]R84."&3"W7!XI\(^$X"*>XUW9][[D/=-G,YQFQ8^*D8=E;^&TTMFR\
M=IN.O\3D;_O:2R? ]_PI\B+/J-<,SH\7,^+4@^;;$N&,??L_?GJ?UR<T_I33
M^*</[_LE1LH/J[1\ XES?9 K>$I<.9X\O?+*S:-_W@WWQH,OWY,0^,/N26C'
M02AM-T*]PX'WVC^EXR 4K^Y$*%Z[D/BWW;<]"D+U=R-4_ST()1P)H7;;-^6E
M-\\$$(^$4/)NA.J],4=IQ\%1VFX<I;V:H^:^RZCDD3@&/^//8/RG'1+'C8NT
MFA(KFH>$^A\K-Z9O3F_*OX4O7_G0/'*J7NU&@2P*ZL=?;X<[OC":6"&)JMZ9
M$)%>WWV48"C>XJ/%-SON(RQT<37PB:]S<-&L."CZ=UO.[#]*PRB_J/"%(?$#
ML$QKO[%^IN6/++TKO91-;2U=_/FR[UX>P@S^NNOZS>\CUW&M<%''<OD=N[Z:
MV=^U[V67=WRI1QXL[\^IA6)0+R3Y/3N^_CX)4OV)OZE[?^FF31_XX#Y_!+X(
MYJ%-(O;CA%@.(-5/'V#5/_U$_[ 8Q?B^KO9E1>"'BJX,)6.@]F1#%<2!T!M(
MHX%Z!@]9A0>Y",8#2.G!>"XFQ'V8Q!\%D?]?/\XLQP%?ZB(.9A^5V?./B#H7
M%CA<_D>;X';6CV. HHO(_3?Y*/"S^,>STOO2QSTRCC_RZ?.NCS!+?RY^T$>'
MSBM]4L![X)6Q=>\1SB:>EUS]^8P_HS]',\M.?TX^2D<TMJ:NM\ T+A)Q7\D3
M=P,NG[\\VJD5/K@^&YXUCX/T%R$=$/W-D^O$$[@;B'$?A$#O"SOP/&L6D8_I
M7XI4P5?1$<.ZQ X'M\ (P2,7D.2Q@W^$V=5DP(5/K+GKD82Q:UM>\J'[((Z#
MZ8\E"HM K2+YBC^S^TN_8K/$WR0SHR2?/7,T7,;])T__22\F+UB]7E[R ,8Y
M]H*GCQ/7@67^,5E<9)Y55D':5"V;ZT] Y<6K3_SO_Q1Z_(\_?< '4_[-"?:!
M\DGV^XW<O9:;Y9V'B$_0'Y_8-^X#SX%7_/KUZLX<<K=W^IUY6Q[ZX0=W:QJ_
MWES=79FWG/YUR)G_8_Q=__J+R1G77[Y<W=Y>77]]HQ&_;,4K1OR[?OOWJZ^_
MW%U_/>>&E\8E)_**K&T_RIT@36XQI/4O%:&?_U]\'<")&P%.47)\6[XF*VW
MON+WY3)KT>^]BP2/KF^^5 !BFXA'>>X]:/<3(QO84G[@4[O=M:D%Y<A]51!D
M52,]7KMX^GXQLNP8O%E)U$U#X45!%+2A-)!T5==$0QR N66*PS/.M]#A=(C[
M<1C8<[1+[Q8S G+-'+8;,L[CDG^@*ROP%_^@QEP^@$_9:NY!RXGM!3A-ONP+
M<O[_=P>X7CV^:?(N^ 9D?"/Y+"_MZKK7B9 >NI;'_>J[=N 0[LMM!<ML(3JB
ME(F.WA<&DJRH"O@E@CR0>_V^I&L2+_!Z3QTI9I7HZ+X_M[P;,@O"N%Z$.+H1
M%/]\YL(21L0&V0Z\>\OS@O@^>$:345/EWH_;"]G>EZ4>Z;1=@4ZKQCG]Z]=?
M]<_<C?GM^N:.^_;KS>VO^M<[[NZ: _OO#HP\3I"XZQM.4'YP_L9=C[B[OYM<
MG6FH&W=XBZ!)\G80]>KA<QSW-E;H6]%S%(1</"'<R(V /;@_B!5R)B"DDXWS
MU9_X:?4]3Q,W)A>(G@0X^2FT9F<;!%!2,@$<]'2QI_6ET6@XD/F1H@P5*H!]
MR>R/:@3P&XT[FBP@N9T$?G0P30=NG#C68@%T(?[9IR&QV1:U))QS^-PF87PC
M&AZ2:\X^7=^\D>LD=#KZ)'6T\'(=+6RMHQ4Y@XA^7^.UP4@?FJ/A<#@01_Q(
M!X@05-4<J (_J#1OL?31Q0R+-]'3\FGKZ;L;_>OM%57(+];5!]331C"=NA&F
M((%F!&#Y2O<92CIQ S?V<HNQKZJR)/95C>_C=7"T!D/@1EDR>;FGZF*1&TVZ
M0X??9)]<XW"MSG+=C(0+@9?[2D:_:M[<IZ+JPE=)Q*A_*97^Z74!^JWB+/N)
M*V\C[&H>6>DI0TT0AO)P* BZ 4I)%A40=E7H]7JC =]?%?8;\N!&,6B?^"M<
M62/P=W]\-F^X.]/X^]?KS]>_ $2><U=?C<L=HR[[6^OME^NMU,X/YC,L B4Q
M%XRY,",M9T5<-",VID0XG.MS;AQQ]L0*81Q_VTM\JL5[BGWM4E2T_/_JZP!,
MV@A@XAKC%[]>&YQ7JW&O8':W4RZV #&5YS,0$X; SZ/>8##"R]*@WU=4!#%-
ME.21H&BK(';EVTGQ 4M1CHD1S/TX7!A@TN]@2D?XZ"P,'O$#S./V+"PP?0-K
M^@364. +<4I]..B#UE&4_G!@F.:0-W -![(\Z.F]X>H:WEG/5TG:F$W7<:,)
MJBH7HL1+FLB_3 <U5N[ZNZY9OT8?45'@@I +8GB$^VL>NI'CTD1^5%!N46QJ
M3>=]C!2'&#Y8OOMO.I8JG=@TP7JS1;JZO+F\O>3(=.8%"\R0.N ZN"4)Y/S@
MLM8\:;H0[1/XI'X&?.+ %'O22!N8DJ(,A-Y0%_H ?-H0S/$AN-^KP*<[3DBB
M*/G/9["ZA#6@IPB\P-T1WU]$L$#?K/#[D[5HMGI:3F5Z]_RE!O@8RWD*^^3&
M8BA2T'5-[(T4L=<W):.G]A3DQN%P9"BR)%>HX80-#?CK=7@7//EK>/&;9_G!
M>;.9[_V#C5LM2>ZB:T)/&$DF+_"&P8N&SFN& $MB\J*N&K)8$8]+EH0J\^OP
M&YBGH+A?9=;>D6<K.IIU.RBT]W)AXOLC7>_+BC8<C,R^-!B8AHDV[6@T,M2^
MT:M=N6\!K(#W_[FS]>X(&+2\*+^7+;N':/[[V4@)(=%HG87 _>[,\CCR3.QY
M[#YBL&6,C;)/RFP$=N)PQVHO\:.WDK@\VOB__[,O"NJ/$1<3C\PF@4\X5DYQ
MCFZ)-T<"<^!Y6W22'[D?MM_]4/N]W!P3>CW)X!5='?:'PD#7X">0V=$ /%%)
METOF&.H\';ZX04IWV_G05/&]=SW^5K:&MB"0)F0$&@)!S%Y_V-?[0#=9TP8B
M6@BC(9@*/<,0B@3Z'(#X?,.U>N/M(560+B25YQNT/_0.2=AGG_[<^,_+-K"6
M\CS?37QOL=V&&[LD2H+;)"0.-YN'T1RCW'' P1WH.3*.%,0?[O^&F(TY/KH=
M?]Q^=BMC/Z+(=9(&H5ZJI7_>.RPMK0E+2_R::SOE:QRUVJ1?<(B=A+P^SH%G
M0N06S!EP8X]NVQ#+GG"V9T71R9@3:^D26E071XLIW'LR)#G[]#79QJ/\0)[M
MB>4_D -&Y]8M4N!S3Q,7QIG#<H.#(X=TZ/I2[M )/;%O\#(XY.#2*9)F#,$?
MUV1>%_NBP4NE7,Y$]2T$\9XBQ1K;!VN^KK]RMW?7QC_.N?_B+WF!^Z;?<+_I
MGW\U.Z][JT7*XR6&R(\$7=9UHZ<*FJH(@BY(O-*31[T1F*QR<9$2K+JE4+4^
MEZ%;AVW60<Z%I6<,^)$X,(6!W!^JFBD)DH+"HO9Y09=TH4I8S 0UUZ>6K,2K
M$&S34!5:67\$X7?N-@[L[YR9X?"[UOKLDAUV../ZX87&]1:S.2)S^U"5FD>1
MZ?8&R6QOQ=]?K[^:;QJK2EA04F>EFO@-)5G5UM;9IRO?P6U/PMTO.'M" &N
MC[YS+A.P0BZ7&W$6]P1L>_'=#Y[@&\2* A_SNJ)HCO$K*^(<,G9]ENIU,P>N
MEWDE%=6"F(/47C)A7OWS#Q(5?]P4 MF<Q)[EA>\:2^D7=MQ6_]PA*[G?R[6Z
MS(OB4.H->5Y4>%V615$V09NH/4D4>;57$4O_'2C^#R3X;4+O*TKNW6-0;#Y?
M@S<+-JT2Z#6K)>:KU?MQ1TP_G$3X00R_^=?<19T%JFJ,>>LA+66(UN@P"9-3
M6 9^KLE.2B;Z>::^,AP(:E\R!%/B>^) '_(&NB.J)*B:.M3X59GX+?#F?FR%
M-&4_C#I9V+<L/$T(S:Q:$H@?A"0F/P%=@*+@<);G9?)0%)1[DMP +]XD&P75
MD=K!*"]X&:M3.&>.K9#IK;.0V(3&;021HW6$$?<#O ],;2Z:VQ,NF@28?<RQ
MGFCPC!4OS^+)BE9EFCZ<3.1OH.M\A_M!+,SV'JQVN.G^+Y@+/D3OAR=Q*,G+
M:+MQ.A(Z4BN*.8WG'&L1U4K^#@*E207_?J2)J&2&/552S5Y?D400J+[$:R,0
MK@HE8\S#$$;':K#0DXRM>/YBN?J#1,<D6&\%?U^#=T7I)LD_Z$+'C6POP%YC
M*(<.@='\:PY?IN(2EG0?-DUG1$GLP1OR,/=8JMWMQ3]2/8K,9E'S$<9"7)])
MV9,+"(*7 3&R.\[QM2A%]R2*4Y@(5S=9T5(%D'D@N+O*K%.7[IS/PN!Y@4#C
M^LP+Q[%$Z1D!42%%E$%42,8P)M\F^)YO5AAS5U=7Z8='\ 8..W'@"RU_P8%T
M^0Z^*!UF=L?QZ_BWX_)CU7((]X#T4S=&YB >('X8^.C0>@O*LK,@PBM!4N^2
M,A+W.[GG(C=&9APCGYQS!%SA!7>%GB?V&0?&'%JQE5J1)6V9?['PB:*4%1VN
MDH#=O;>"9$/+QI7I/A+][0TTFR;D:0V&*0\40S;!DY?[([ 6A9&&FDV5A_J@
M-QQ4E4ADM$72)HJNTVS'I=E>N:=$6X#D_^PF[C3NX5DA&)V6;8.X,Z5 U1RJ
MJ,K?@L;R+RHN1%- "?A&F%I:P(C3&<4"JCLXT#\8Q7O@'L+@*9ZDER_!""9T
M9*D2"WR:%H:J3N1_K!O?&7>V^DOZC/ C=U8_FC,JS6<UHSG+ CR">'\AIGJP
M:)Q?<C\8E+2!3_[VH@2(EX)YF4F/**";Y$_PEY+*%_[_NFBMNCE_8EV.Q)I+
MPHL>$]=T\5OSV.'Z^VV;5OU"8-I& 2I\H0V/I,N".E! \_6&HB&HR@ 4H*:-
M^K+2DRIB)31$8H#T/P3A8I?-*/HT!0P[>1KWI3Y7 \W1;"N^S:K5UF$T:W:O
M;]-6:9TW<*:O6L<C6<T7SE'/995-=,0$MIVS/9*U?'USIDH;>DL%.74=QR/'
MOZ";JS^ZF78S;>1,VV7%?EWR=JF*X7X8!BRP2QU!=USO_3:P@JF%ZNC=U4_E
MMU[J&-V''UKN/S2*.=Y\CK=,V-DDLYU%]J/!Q+ZM4V_4PKZEU&\1K1#X0AV^
M+@BZKJB:,!3ZO"'W-=GH8[AB)/549:2.5L,5E&O2,[KWV WTH/IXGYTBNOEU
M\^OF]\X*P$SW37YA^R;-TG=M7\Z]:SR-+[0='HQT:= 3];X@]LSAP.PK5./)
M&M_GM8HV)RFO,%8QTAVV@VB^S/E6#MO5ZFVD\&J\9D<5,X*VS//%A ^:Y@&>
M+?JS<<#-([8;"T,F]."&.&MDGF9.8$8%?LM;X,>?7/@TY@;YY FW>D/RZ$9T
M]\2W?!NY$/QG;-Z(-^,![XX5.A'F*>&)G)7U,)P@_6#]K7KSM2&2V':D.6"
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
MS$V#D'"6#=^+7)1QN"7_YCF[#&IX!J/#O-7DLD^(0SOVVFX,!$M&3F\F6-&
MG\..+RZV=,F:^M*!32QL LG=AX'E<+B,^)HH&,=/%CQ=0PH\F,UQ8!P1_7R1
MCG&Z/(ML6:[NLC7)!LK6!3YAT1_S05$RV_3XD7..;;C@WR)[$J1-"0):O5H@
M&L%VEG#;):>S%V/"%[YU'F:TIO/$7V1S<_THMCR/\L'%))A'Y)(;!?D33Y,
M&(>,X5M^$..<9Y-%A!CA+6")_C5WX24X_>R-.+B)%3KX ZY5%*>CR&^9S6 A
MDZG:( #WA'.(!VL9PD" &/F=R+X)Q3-2WEK6;4I,8+V):T]@C.[4"D%R.%@J
M#Y:?#HH)"UQ[Q (6VPOF#F-$)@KXWS&AG:&!6Z_N2FM;H-LY$,?VYBC+U?-,
MR4BG=,XY5FS!LODPGXC^(@XMUW=9\Z!SS@(ZHL8YQ^\[<QL9WG''*44N09Z1
MLUSVLB>"',(XG-Z0];7VK/"! 'F+@AW,XPA&;@,=9^P$\ 62&[X?P13+8FP]
MXY#^FH=NY+AV+@V6%P49B6 :L>O/\4Y&#2Z:SV9!&)>(!=(&AG$V'_@N%0;?
M9G0*87&M>U@7/)4G73#Z_HB;)QV7O "1DH33]#OA2@H*L *H)4HIN'YO151.
M0\QN#'& 4PMQC98HP6\?B3\GJ\1,)T:/@@@#'U#, =BB,C2&(<)[4D8C%^P7
MF>1F2)#.(G*GP,KC!5V>Y&F*.CF0(B#!BL395Z++PVJ0+_K-/\P[[OHW\^:W
M*_/W ZLSA Z,,U&R+:L-H"-MNXO-VADH(YU3OF?P#G]Q")JHH85R[Z <L\=H
M?R]\@")HN$ H!8T1T=UK>!<(+*?P[/.8R@1B$CP#C,0$8$0ZYWF^@+U2C_V"
M8BS]=!P\)2I!D,Y[<(W!,^?@J50@3R!,=Q,8>3X'*EAV, 5 BF"@.(3R-U7Z
MC6A&:/PM>U$!\(&K?)L.B%C ?U1RDOOIY %&R0/5ZZF"I&*7CGGNN_^:DSJ=
M'Q**YTU@TKO08C*+BN9\E3'N 3&3.:4D25&'.&Q)+V!F#B6%,V=KF*-XCHU1
M! H 7WF.0!*$#O>=D!G< S^C-5# %!B&]010!Q^Q"7O$<J8 ['@*69P<VTIA
M)3U&X"_X&EW*\=PO9LQ1:P9Q*#WL]8EX8Z;OD#_Q8\ \@6/!U"UNDNA0^&;X
MD"+,'&0 [1D\PBRB&@*8>QP&+#=CQ?Y*^ 4_18'+(4B=HG9-^ 4_/"$12<P2
M1C)X.>A7%[7D7W.0GP36@5PAR>95)@5>'[L)W5)KT1H3U  38GEH+Z(&G4^1
M,Q)5 G=ZEN\SZI.'.2B (%PDB)IC.U,IN%B, S+\SGGYDN4ICC&=G>J(@C L
M.*#3E$$V ;T)LZ*&'86A LU0L5$ 2$8 PL.28(KWE#B0X4U$B@)+R<A4JF?A
MX)V4L3/2Y[1"7BE*(=K2[(TK$@"CB9=M!<0WL +G[-'Q*AMPS%BQ<5! 9< <
MQ@C(,Z#*@"6)4QK6/<$<_\081X(4H8.2,5G;@OF)7!72 S16!3>B"P=*/+'0
M\K%PCY8W)\PYJ?9(%E%,IBM&.'#>-$! I^2.)_ J%'4VF=0,P'AF(ICGF060
M?!M-SJKIG2=< ?=,J4^0F*C4JBX:/_!A-RS1_I+[7 =80'\_>,JH@!./)V 1
M9B9'_DQB=E#-X1?Y9IF;T5X/ILB?,2[H(_&"&1."$:Y0P=D#FR^C(YUM=L5V
M'UTF!RNB7ER/Y.%S7)A%IA[9<TS-4!_CGM:4X'L+%IM7$#RTFUA[Y10XBW;H
MQ1.N3S90I _H 2 ;F,D@TK0H)96YH.0%!;1VG4XNFB"QJ2V.PTM7W6(N(57#
M9$*8"TGU, +D$H<7 >4+G;&;H$$"#/FG$472,5%QIX3(%"XH4->9PTU;Z-[4
MNIS" J!O%%NN%Z!KE'BZ5.'#/'.U0M4#CA]=;-<&X P34AS:V$2B5<!01B!<
M41PP8Z,8U(>=M5D-29SX33$S$\=C<)Y15+$I-RYQXHHP"03#+R/($@S!#0N0
M6?*=.BL1!I3<J.ASE)T-:E8QI\7+/ :F229 +^Y?]*R(!7XQ<7F68"F:PUH
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
MU59EP(P25%$IQE1%9HZ4-HDL.PRBB)9.8MHXLV.L%&N#\,'RW7_36]G.3^7
M\Z&FFUM3X&RL61C/?5J-D_88+I6 ))7BQ6J(517]Z(8Q2S['G;5BXC 69RP0
MZD&-7<",+C CU4URX!;KAIL,HC38I(@Z4:B<1P#0PO,4V, , SV2E!&-W6=:
MUAX1I"XM]&")Z%COEN5[AUAA "]PB]7#YRDQ(K"N%FA!G6>:IOJVD-@$]#B]
MLY!J7KP7?^W'+/\:7A5XM"3J+V(SEH)%1W)EBP ,$83?LP'^%=QSC4ZQE;L4
MV[<#'SN(& _\HM\.@+FH18 _ SL"YWB%(LX49[#V!BYDEL :B6+5B%C)P<09
M2U@!:LKF F?-L9 CJ0DJUDDF@RE73%(6SLQ<W/>>Q:0$*C/6S=P[N!7V.]I.
M0*JE\I<RZA5JG+(;6 %:6M%(6XF0F#7/@"O@<UVD/^>5M186.S&'+?-[TO<Q
MTXM!X._D_H(5P3BK \MU#$T2*/1P21(,2@D%/BV;3#TW"YW=!UJG',VGL\Q5
MB_,#19(*G\52_4[1:T4EP!85[<XYSC'--4">S+,0;+CDHM)(JX3M";&_-V#)
M"WY:L7(_L^Y8$L8\#K @AO/G4Q(&\VBE\K!04I[7M><URK3G!"H8*_Q.#6/7
M_D[U#\K*++,?4N#/Y!ST]S2/ :!"2J,O^:_ RYNZB:BY/DXB&8@=8&.-8H%\
MTHN'IL)[Z#+B<MO?V:>F]Z#T,;,LX:]SS(\G<;GFGDZ94'Y>9%7?A;K,PZYG
M@4]I<QP:(D%ZK\4]N/,?%X*89NA3#XPB012#@4';%*V4W%)S8^DI5B5*WY^(
M&:S$8]+N(<(;L6TKI2QH=2=MF! CXK(F TO\F'R>BB2BSK)I2?UX]CG6[ *X
M@P/V9"TU9NBS_3NU>I*ES.V.L4L\%/>TG0NK24@+V_+2S08TV,IZ[.QD>*<&
M(D H9?C SX-GQ)]05E^QMY-/957WMC6SLIX=]PLTL_$GBY&806I-.3XPR#T0
ME2,@:\$B/9ZCU Z+(GOA307P/2SAJSRS3;D@!P!O)B>LM,<#3#I?#=YFI3U9
M]X_J\"+P@^.1Y$W/YTDPJ5@&SV <P3Z@@=J8T+KXY4 (2/H3@@=*/#9U(.E3
M"7*D.7CI(";$FW'$HU7^,%)GSH+-2:T\8:UR ,FF0:'4%3$>"_M3;3##6+R#
M83L&T6G#A;0JUEZDOB(:+NACP7O2C@(S%L@_L*0C5>;8G( X28LF&SVQ%;S&
M0LCBPF6ZF8:I$G56T?:I*)O@<P7>(TMJ1.>9?BE>S,IM:=+6"[1C&!+RG/5E
M "ZC<Z'+<I]&6_^:@Q_GLN4.:2^0F($Y'5.4%LW'<U8?9D5)RS&;%96-<2&9
M39U"!;.;XZ3BK&B= "\_9-@7H=_CXZY:WM0*0_UQ5M*)$X]2N]PI]&$*XVSQ
MN6'Z;.*TPHWWB\*-B;\?P7]]^I*D_4&A<Q<EXQAI0,'-BK #7$A QQ!\'2+B
MHPM2XS\4/Y=.L_I[^>NS0&]B6"<+GW:_BV,+%2RW9EC@"N5M.]*X08E_JCJ%
MI3%):E&!O</D%)> 1/\GU>I+2Y8W&4,SCXE\C(VRXI2[PP![;Q3"Z*D1SU 6
M9A%:,]>A!$2BE89AI15@]$JVZJ65Q0]<<@EH3ZU%PHP8]Z=A_-ABJ=>LP)!I
M?8"[Q:K$+=LE5H9>=$D3W>6XT6P>LP!7<K5D.S,NQD;:205]=ANE]'2:."#E
MM@+NE%PP%X7R-_M&5!!2A]QC8QM$;UB;<XY:JO";:$H%&ZQ<[(]B3UPP=FP
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
M5;ADL?]BL*]X&F2!\9. YCH*,T$O/(_YO;[E+?Y-,-L9#[5S_YU\C16?8GU
MX9A)5O"2E=<Z&->/<X@ 40#DG$:KLIW@ R,B%2*DK1\\YA%3K-"\8#L'M"Z,
M6J;4; X>"/6VZ?XFK04HQEP\VF3J(36PV3K Q$H;E*G"I5FC:6(6%5_,3<T)
MDL[@/.G50W<UT],0\<!9=TR2!N01VP:F=\X";'A EQ >PBQ)AJ&X+1U,W>+1
M@(")!$'Q&7NW)1F(I27-K(#&X<FK>I>]LYU?83._\Q<+Q7(@51?4%2YF Q:<
MYQPI2JE#R_F+=)ME2:V4;+W?)TP06%9/H1L:%V1)#4EW*]S'0_R_&+EAA"?M
MRGWQQ_P8V"1A. E,YAF,]+C)K/Z.VE2X/\&.;T]<];'[0,O2T:9P_7DPCS![
M-"N\+-3,8Z<0^ ]MKY$F)# W.0EB4J''LRB?+CF*7JQ>9XF2.<ZR42\W/4G/
MEK22\X+3/'L6T[+NL6M/@FHL()6<.LU +=?K4;&\&#X(IOUA$U_7MATJ]MX:
M4(:XK3S"8M]JON)$I?0(53=*3EESZ<'<(2V)HSL_F$3T%DW="N8XOK)0_9L,
MA8HLRX=._!ER,7;+S1_.UQ1@%6ZB^3_LQG1;JB'=SWXG+ "-)E&<;VLRK^^O
M($R46>E,CD)[!K87EBT);EM[S%(J]LM#=X#FD,"JTEL*S>->U4OO31OIT5$'
M24,A/ FYV+^NR&S)R2F,&WU*-X&G 2ZP1N;L\,Y\@NDKDXBJZ[NTU OS*0(G
M">R%A+Z%'BY(WY.D5RZM *4QW45GAF]I4*FO6S@<O>:<T6)Y2^611CES8B58
MFM1=EK="Y\NLOC'MQFEE?3/3/<.TL^6!F\I%]%#PO)U<;4]"VH8B%895L4_:
MT:2I12QDFK6CJ:IC7=V)R@J&HJSJ,"LGN,G.G,2*D?3S+ &"KC*M(ZX8?]:/
MD'G5I R=Q?8R626,F_0:3:K*6(<NN%I:[W07:Q4EZ7OR [ ]*J=!'=JE.(U#
MH_A:K'G!S C,:[*3QJ=Y"TJ8E!.@5#16Q:;8V S%6CIZM5"'6@*$J[MR$+\
MV*GRK(3]2^ZWO+%<WMTJ?3Z#4+JN\RA!/5A8STMWCT.66,04(VL_&OA@J;$,
M\W10F+T4^'ZR.YFRB1LN=7W  923"%=WME)T9YTJEE^0&M!T\S6%[JSC0>K7
MY[M:V2E;Y9&#"T[BB_F,.7 D8EO=.@L\V7./-IE(!DR/L:T<Q7D20%B^'!.+
MME_(31QLGTR+1PM@G'=K2;+&Z''5?C0/D\WS:8!M41Z""_2R<]G#0JZTX/RJ
M_&&&%/ \+0RE(,E\:V]1Y)L@RQ2W&(A<((BPG*\0]2!]&AT2EU;YI;U.@[1L
MGK'-@57$ *E3S7@E)L8US&F69'AC= +^? AP7LE$BWH$M]MHGGHJ .7#O].(
M0IXK$%#)JFQV"AR=OB0I.4P^0Q$]L6B3ZW2[B=JJ*<,DBY8VW"FT^&7]?S$W
MD9J^J2.'K9[3<2;?HYF%4[J[D;:?7'IM:2>?2N"C%<4K9LU:Y%@AU3EK[%,(
MNC!0R#K]I%^G/2W3_BM^UE6,IAVG,9:D?J?@*Y2K4%)+(>T><[>Z<*7SVC!%
M@J2<D#!^@+$L=&,2CBATGX/)86(,91XJ.M1TK0P0-VFG5.UV2O=A5"P?.'I;
M=>#HO@%R%*1IMQ4J;-E3S/:^"BB8XF-^TY+306.?U!0LH0.B&@MX)M\N0B^Z
MKM2ARK(EG2Q=+.NJG]"/Q182K"PJL+0=Q6R"7AW-Y&5=/3 )(O5U6?D,B;[3
MW@U@PM)-T'R@V71",@/_DY'F,6W43EM(L<I<FVU$8LUTE#39P/>=%UH;L(']
M'Y;B$3$3 \$7/%:.A>"6 #??V\6&5=Z"9KBF+G61FMD#V='FJ)Q1H2?33/+
MTW;# 7M#@KAY&)]NGR6-S%/',RFT3[.V?:>,J24 9.N$F;UH^J +<4]LBQ[@
M,.8\\N!&'JN,H7'T/'MG@I[)H6,GE69P1M&U6JW&\4[=HZR2<1YE+5$ #NEF
M-]V/I4VL:3HH9K>SW7_J^=$5S_51*G1UCC[==YIC&Z&++$"<#IP=BL$:W9\G
M8>.BIUC5\3_KX)(:T6@#9C%H"SD9(3U)MRR=4Y"HY\R 34,(\(9TDXA:HB@
M!85+LBU<^@DP4\A3DKF:Q26R35[:KN.I^.HHNWC)U1SPG!O !;I:KI.0AI6F
M)#$E>$D0E;IV%DY#*"=TTY$"D6F?FT(T!0C-XI4/-,[,6HE1:B$*^*FOX+*C
M),!@<,-DE_S6!7ZUPFS<2SB719#2!:8"')5""LR4*@86Z.R+;GM:P4#[>*^+
M0?S_['UI<]M(LNU?0?C.S+4C(#97+7;,1- RW:T[MN4GJ<?1'T&B**(- AP
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
MA-)J\?O3S_=\]!"Z"R<JP<M9^@]Q8?B(FG7ECL)9,,^""B.V%24L9DS! *F
M[CLR3_#-\N4A@7'3$N4K/9>QH]J*!8%SHFFVD>IO.12]8/&D4#HA+$L-?F/L
M^Y..O0JW(%$MTEM,>0]W -)^&E&^V(9ONLV,^VCWD7"R4E-F48*&V[N$7YJ7
M.AIQ<1_5:@1X!/@6PK%--?@(,7!.3<S8](5COT'&:@.IW .>N+#<IDL6@^J
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
MR706IPNE\E?V.BFM9DC5XJ.B= M16Y6YMF'TR,Q#;@W( 2P"O(AR9"^((R[
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
MF60RF[N&^"V-$79RRW]M<=>>*O($#F??UL/A.X=*/][R2X=I'+XBCODQ-G0
M?>;]F@6SR??K 3/BW8R//OXR*F#JHU=8+ZZD*0:>P:7ADO;+5 R:$O4Q_9'.
M)QR!.,96R4B%&RHUA;]CQ+O=?(5.U@B."CP/^[ID41#37UJO/-2P*7Y#/CJ.
M8A7J/]Y&Q82TZ"5W08Z0DQM>/_@"2B"Y5MXI'+0HSTDK)VDF8\CG<,&X0QNB
MLAZEV2S-:-APWV1J##< S@K4> I/77CC>3&'2P%&@ .U*MQY>7]4X!EOG70Z
M.'+G+V9(]B-=WU,!C,3>3_"++R,U*^@.@">#P"$[,'$(WYJ+!^RR>.$.V(N*
M%4.F6?)@-[A+=B=#58F1GB3I=,8$R<2S[[24AGG .B<YW:YL.* M2 L2!WD!
M<[I1WD(%6:[7Z;* 74?; #?_8YIFE$DY>I5[O683_HI7[ADL\!?ZP-W?.(1O
MG#FR<:5&DP2LW>N%?D2>SZ=T_7A_:\&'H^1&Y<44-VH:A&!])3ON2]7=HL_/
M  5,.NP43/2@@GPN=]%H/IW#0<7UY&W@I><I4K,#9W)D=]U$8(N'.5MO;,O,
M' V03]+;!%< WW=-ZF"H8-_9DBJ\!.:7YV"!D0"'(,KT<GBT'"YA4+>/W$9T
M5]Z7T?3:R[/1/Y_!><R*@^91JSU2'=4,@F:OW>T<=YJ-/V?7S[P@+K[Z&1F)
M#*)[B"_E%BF'Q^+1_ +O^V&WC?/ D@OVD#L&P9':LD?0\;/U.27I$?0S.^G4
M#_Q9#WQ,8#5Z7*A&*7N>+\G<P#,,CSK%NQ,,DE_X1GHBN*Y6^Y=.ZQ=[&];
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
M\A#@"?IWL#4IN2!Y!"<'[&!>=?CU;)*A"]4 3X;^$B]\=Z]($,%$'6714)%
MZ"V&3Z'A=@V?3^<%;C/\8XCCBW#C/%XNCQ;(R,=U&L1@_\1Y2M*]_B2*L?A)
M>2(*>&S@&V3[@:V1IPG=O\,@AU^ADT7"NO9Y/HR[P&<LZ,6D.>#W<'3R.0T:
MY3V+\L]LG<V3$=Q%()YT1/$W8*_.X1!HR:?5!8=NC,XABDL6T4$DFY>,=O>,
MX0/T(<O8[X)C*1KFCD7P8/XSE%\:*0A5'H7HC-*WXCB]Q<_#P&%K@FF*_V;C
M.H6Q@^(;PZ#33#:11SP*YKFJ3@:>L&8FN*CK9O+2>]YZP=O$&BS7,QK.PVNT
M<V%7,G4]CP,8Q0+<F)LH2Q.M ^C9(W@2[<XL@T.7@5+WXA05';Z'%@)$!LR"
M1#;1F4FBK@,4-?B*N!-1 DLYI8%ZA1I-DC1.KV&#9W!"8:%>><_;,EY\-9O?
M"YP\G*L"18!'4WH.K4+.VGKAH94[FHA$"'L=R K*>);-9[BIKCX$ZS\H H^-
MTQS>WUG]?G@FB?AUEMZ"!D9AUD^!I<@7B<JN(W(3LW1^/>%=AF=>\V?P1<'H
MO_,(W0Q]//$(WDXB."+!31KA_&&@[J4P D^0)Q)&.0Z>Q@RC45\BIFFW4X&A
M=V7H6D(\%#(]S9)>R!0-A49YAC-/%*TIZ)DB Q\/+RB1V1 ^"L^#+9SB68/_
MKT)X5^_N92I?2T:1:S?L!N0H!>]5I-\7-QMG) H4%%H,'@KU<7.%T/B@+,D9
M*+" ?5(T+GQP>6_Q]-G?PW?D4?!Y^!>((X>%$C#FX67X.#D&,46JZ&:&3XX(
MXQNQIPN*2-WB<<1;AW19KK*;: 0+=)TI5@6P*H>R*M?P<72\%>B#=!J-X/"D
MZ$CJ8P/GZ+,J['6-WSV2[YIC4?VTJ+X\3V%143S(%L M#&')XW2F_=GJS&2H
M]&_Y,RQ"KB7#"E-F9735]V&0QUJ;I-.9*B(WXA EX1RD!YL(H%2#K7"K:(;P
M&"MY9!.5P@ONH^#_0,N@9^;KDYXIN9SD0,-#YGPMK9TGC/-$+R:&RASQ+"AT
M18^"!Z-M ](=1^,(IPQKDB:)XD4/%?P>%L4L<ISF(B=%9&,'G^&VFJKI$+Z+
M/X)O"*XV_U'?Y_@1\^Q7]/#GK:99R)Q5+2Y#',&!8;LQ2$"]!U$L)Y'^NN#!
M6&TK*C@=?89-%!-5M#EN;L/KPS1@EK$*G<"F&+APQ^C+!Q_#8V498],6;AO<
M(5=OX+VL+0VZ',_@&N2)M/J^-FLNX"'>6WYV0YLWG^B^Q>V#>>!@XB":TC33
M(;B2<B6 HI_#CR/XS)Q#U+3B-U&NOF(]+(=K;4CC>'!X>-1]_>:HU>D==T]?
MGW2.VYW^V\/6H--JGASMG=MV_I_!Q7_.!I_NW4G[E?78O8^#;"R^RO6E2O)G
MC0#GX.5I/+>6D%%^J#'P'+. H<$ \NGSD0K@KW Z4/^P;>-8-&3AB89UU7$
MID8:A*84) >?Z18/B%%)I=>C]A$/D&[=*U!?*N2C3UZF[W%J O^5CR9I&KL'
MLSHL#Y4B1R;/$GRRN'VW=J7@OV-%)QZ^">]SAU*Z4^WE:^: +Y[ 0;ME2QR.
M6<Q*Q1=[*4WD"D&7%?0H?AN_A*LL=KEK.=**>-,TI)BVW,M!G&H%*\X8/H7,
M#)4839C/9VC'\)/YB1[JHVN:1+[(00'P)I'/HF<//@/J*;*9#L %4<Y>:$_6
M3A==%GVC/Q<U=AD$EZ*]7OARI5D;&$0L!@GED#Q(<H9_NT&--8K3>>C3V!6Z
M$6!0@[R94,<XBGFIM93J]ZD#_E/UG> /PLTP7K!/P=]F.;1W#=X?\PQORYB.
MAGY;CLDQ2M[P =#O$$T.(X8/LT/DF%)CQ?8SB@8,= IS"LA:'4=?\/,*5BS+
M\+J1=YR3C+J/X!6G!_&:+61L)'T)'9I9L. #*_NRO(GP7[@YX>X.9C.0LAP$
M&1S9'*9*--3ELQU\P=_]"6Y 'D9L^VV0P]NQYCJ?9U8AB%F(P: YO 17@T8
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
M14A#V_!^SSDA0Y_0P8QR3%2C2B)PX@0D@S>[+=G$2 I\86:@$LA7@KPO*:6
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
MT,<58T2?.%_4/G=!-QUDM#ROF%ZIH6PM-$]):-:8D_H.U6)4"\W3%)HW57_
M('NDCPYY*K5T/$WIZ"_5AB^)AF$DK_5,+4EWE4>784"ZZFJB$C)G H;B8NPA
M'R^P FFE/'U-?.Z[NOZ]1.<HUK6R#)>[S1G70W<XG\[!%YO%Z\\1NR7L8*SQ
MZ,IM\G17/%\#D3':(#!DFQ]Q&N()D E'%OUE6$&I@Q05VL'GK*_'B/+GVJM!
M'RXEV"&_#EP_AO-Q,,,U5I6. 9"C9.E!ULX\9R\?*V%17/"1W*!;A\P:'B7-
M-/4 ?(CC+?*]M0_&.L6A?0QY:=13G9.H-$@-?\! UKHG-;Q^J= :=TK'%5=X
MS[J4T+0M3+/*UN'G]72HXL+ZBWIRI%/U9O!$$C6."MM<W+BZ*J)O&*:.]!:)
M'"HUW1I,HTOX32#K)HABKA5(RR^E^D-G-.9]/%NS9Y&8I?00)QPF_OG2#0&[
M^9ZZLMYUBJ+D)D5V'0DJE,@L=<Q!?Y,\;A,TD."@I$SI?I/9/2L]Y=F:4D\Y
M"A1\0-IZCNZ#ODJCA,$_</&PH#K!"%J@:LF\#ESDU;5%"I-8-^JT9;S,>N,P
M,-@#\,E&*2K,GK;)6%H2=AHAR(L< M"-+&H8"+$K;<IBT>,L-W"GL&2\X,J-
M4/G.PRA(-UR4Y443*NE?6#3//)MAM(2".96#0!F+J9R3I?:9MO&GA%^=M9F
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
MB>6_LZ>6_)IHCN>Z)=DI/5^-18IEWE2,>DAQR<211V.T=73.@MXS\<U?J-A
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
M18@(^1S!L2-N(VE2Q.1;0DEP<JWYFD3P-1[ML0);KG,G_$17#:TH/GPE<^'
MZ(CE,@I_>@C AQ$J7%AG4&(FES):RCC9X?YP1!0A+$J/,XIA1>WM=TJT-R\'
M5V/2@+5VKLG# >>^:"(QG'O4^FJ&LC<ZK:GOM@XW]669$RJP\=<^@N=NYYNV
M+3-I8QG?2QGL[ NRC:13LG,F%F(%$ARM-,G%?Q(1Q1)-7/HGEH&V#[_#_Q*G
MA?RY1#H1Y#3P0R@+-H<R6FQ/^FT4WL=S!_E6\/VQA+;?$D<&4K'0@@7-'*_
MB..CN)0%";(<8#<GB8*11/*6R3P,B3Z%2!2V^QDNS5H'%<VQ^7,8Y6423>9"
MV>4Q;1MEL(,*8?BFM$;"T#Q-;AO.S2.F0G-UH"& 3:+<)GQ(%UNS6'G(Q0*U
MT@"+=5/S5%T:)RGKC'3F() X>K#50O(86QU^UHPJ.$TV^9T1H:-+N?Z(C^?H
M/_+9!TZ3["/? Z;V8&J/<Z3;8&H/IO8X>'@+4WN<ZLPQM<?IFAZF[J@AS/_@
MPLW4'1<TTTS=48>99NJ.8\H 4W?4@KKCP)L99N<X]+FIUM#F0]][MX<]MSDZ
MJ7QC+/PL_!4)?ZOI#KI-%GX6_LL3_D'7[?38\%^J[%<D187(A.H8.,?<$L>&
M)]9,%2\3H]QJN>U^D1T1 _!9N.LNW"-WV"S!)\FRS;)=6]ENN=U>AV7[S&7[
MY3I^<'DMA*VNG3">)_G#K@!0/I S^O0LT:?M4;^@)XSQIZRVK+;'4MMVT^UU
MRQ_G6&U9;5EM7TQM!SUWR+Q*EZ.U=3Q[=HJ0C9S4I55->!YVH$XMG#!C0YC
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
M< U@"/P%S31#X"]BIH^'<J_'--<#R'[P:;YPK/K-!M>D]CM%X4KXL2?59>I
MY?T[M:O6NM^D=MQ1F9Q*%WE16E_N%%:WVJO;L%F$G/N2U8TUBC7J@5"@3HGH
M/=:G"]6GJI)],*Z]3DBJZG'MF%X!XVQL(H%C0ZIJILU/=W&<$JZLTW3[W4*[
MM-J!RU@XSTTXVVUW-&#A9.&LHW .W/Z@R;)YXK)Y/O)8#"12.V$\K\"S]*+$
MAHN[.Y*GC=4D\I:4U^PR#\I/7B#JJ'>]9MMM%;I7J*W!9Y$ZKDAU.T-WU"YB
MSUFD6*1VBE2_X[9;/9:H6DG4R4E1JX@3N/Y;R1-WW&YA$H]]U*F9FIVG_Z'5
M<SN=\Z %8^$\.^'LNNU1(8(H%DX6SH,SJC2+Q0&R;-9(-L]''L]C$3\OQ^T_
M1#0EQRVZ:,,8'KK,(^I1@1T'7P@&;K?8_?(CG:WO@G $^ U+;*6'OD&S!(;A
M]"26);+F$ND.^D6\@BR0-=TZUU+(6I?L=ZXW_?TF+=>Q3VNGI&N'8>C=-YJG
M!L=YG,'V,;FI*Y:BUQ^YO7:A<W_A,3E-&!";!C8-%V4:NB,\XI7?4;-I8-/
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
MR8FEOUK?AS^_^9U>!2)B*?GF8(AA[8+E$39CQ$0YD; BXU*S0?\K@C4^SB2
MQ=6'OF5OJ)1'4QN5"-8]VG[DF#$U:2WN1[ #L'J[#S?!\F):$L,@$<@,1!1"
MM%NA)2H9JTGD:8:_K. 8%FYH/<A*GH]2K,Q2F)%S9A3&.]B*U^@#4X[;*>Q(
M#$>F9>"U%$QZC R+[SI;)VQY[Z%(+\@J-8,$FQI?[W^H66G+;7/-WU'H^]FH
MZ/;"\U#$-$3:S;O0@S)JL?IJSE]0"S RP:U,-U>FHVODT780<*<Q64U\/%'8
M[:%EO8:-H@SL0&8#A%N>)\D#&'JB'@KD/7)!$:]E.(&-FB6W"I,X)<IQ'9!B
M30A$%C)>J\,6@DU-2S'=4[A'U+NV=8)M:,#1I^6#6"E'"6ITCK;)"W9J'PEP
M80O3RD#K!:P3-K1R@K4RF[I*=DNM5JMN8U*2=&YM34!]^7#S%0]CJ"X95_WS
MUXYXHV@5SN)[- ]@&V@'8$T&'D8T9SQ1I-W)_&J3VA6MV<L0=)@4%7F=[^?2
MJ*PMF]H-I]7LN&5YQ1)8!1;2F 6R8MJJ0(T*MBTQ&(V8Z(71]L!Q,=<+^V[#
MN0YV=TG)Z [--AW8D9=5675$;E[H'Y+1WN)N]!;69'45AU<HC;XD^[:0\3RD
M3:CMK1F 6.<2,*.C;9.I"&N%90O*7FC2R#"0MDZJBI:T[=YJ1BZ85S)YB@PM
M'"_U21>M2*"/PEM%::I,ZM_^.0;1:3B?T&;*"':ITMTR[K8=9'B=>+7$A0*J
M7DKQ@W0#R;1I/Z'P?'HG?2SW_R2!61>T;=YZ(*5#@T&4 @8+EP!-^*L,Y9H^
MKB/!EYSH<[^U]^D06$/?L#H ;9LD>JG66UF8#_/,E=3<=5LV]W6VB<RHZ/)J
M@E.BO2KXS"Y->N/ RF(=#-C$_R1A[)E4"WH'1<IAF@+#EV[4<B]V^DVR.#5G
MX=^\YYA>* M_=1NW;020DZAJ_!;=7@4'K[*N@J.SS[8[PRK(D(_G,4DY/5/:
MX>*#48TK"TVUMH"E&C-H-H:53 PLU1/RG=/)N5I&9CJ46FY<<XZ)X(25'M1K
MP/0+9ZW ^23'48)W#>VAWGT3BZV8D#L:=P2^S2MAG=+FJ#US_O F4?@G6""]
MQXQ#_-4ZH/%0.('- ?K<+-5I6FHY U6!>8).PI9PS>%3ID7-=@7>53>W8RCA
MFQP-*VB+-AY+X4W78@!A+Q0EY.VC;2/J"M$Z3\DW"QNG<AZ_*M:=&AU'U_6K
MM4^]4+=,3BY4JM5[6- G*2'P+JTJ-\R=*FQY7C2HGU\G<9@-77-79R<RB@6>
M/]+.OO_']_VVHV(5K<(="TW6Y[0R^MEHE6\(#LVV=E8T5JU&MP(]-*:"3OX;
MEYTZ2<M4+@)<')%>'A=06&'AF/9O.+GASLT*RS)4\=7$#^EP+:;_3@S]/!S4
M*^IN9U#%U1C.2#[! [0-#M70/4JH!!JPQ&978^/;E>R <NFL,&^5(RGQST92
MO*IDJEM%BT']4G?,%-T"(0TJC;V1+<\D]CK.V4,;LTBB-T3+JXT_("\MZ@*>
M3A+,Y)C*A/9")U% ]_SZD_>3[OS) 94L81L:ZPL2>#& J=(W%"Z8 (SK27R!
M_@':<IJ,3CBIL.D4CCX/*UL*-BJ[WD#'#:A6,C67>"%FFM)>>'U-DH\_,%U(
MB)J>MK!D>+($A?F$ -#E9UQO5'.5@<<E5V>NT&IHDHBU6KT=.<G2DXAY:MC*
MK(!)0'?0$X+-8+%]Y_@+)DI;;\I3C4MV$;-;U-Q#R-D#4@2G3URE;+\V1]CN
M<4#,1*#,_E'^]+1K8YQX_M3<">6\?P,WF^E]6PN]P,"0HA\0[R+3 ;,9,V]
M,>2'<.*"N9LTP,YIMT&P6HLI4,XB''N^O)IYD8+1NQ'B!@9-^B@^5I^P%[ZX
M=V0 ?TUTSE4!:C'!67[&[L;FO,M&:=<&R^PCAWN/:28<B^80!$9O*JD7'U<4
MF[7>4V-'569984J]!0Z M"%@2LPD%#E>Y<T(# EV!9V2:=@"_HS.;YU/=2$C
M'(85"4M(V=_HH3A*8%8PUXLNN, @]3+?3*JLZ4A=)[>P2W ZCXU4;A\*-?JA
MF/[Y[>M^41"@/.C&GDG*V8/7GN'81&A@BQ<B@&FGZ5<KT-2%[M?6UMUT8;39
MA<T]G>X+O.4[9C^]ORM;9_.;< *&2>SO#>A#H)<(G!/\XTJH*W%E;A\PIC.Q
M+O0T8"*GY?0J"MFMMO>N<^<I<EJ;CS :_DIYY@H_4Y>L8%0<G6R0<A&'>)U\
MBR'5P88.Z?'9'LR]W@5K^;.3#AWX[=?=P>:"4'3<=RG;#32<QGT%ZFH,_BJ=
M!6L=*1.,IW,RIC<^-$5&Q]"*.:A;=-N>+\KW9I+N5O*[2;IW$HO\O@A4<)I,
MLJ"B.-+;$M>)Y60>T/5]K/W(T-XIS!_FE+2-T?,V]6Y)L&"N))CHR2,6+5UR
M'Q[@4]M=[+@+.(+7?Q<S1941B\-A%9Z!>CC^:3025=;7V.]4D_CON)< .P7G
M>//T4(AF_NZV7(QFLXH8S0<3P-/F>['TPY6T^6LSB^B++ ZMX:1Y*.T#E7EK
M!FVWV6P6[R %<2H;HP5SL0@#TQF*((=>W-Y&\A:7Z2J]D*TJ<HV^["JP4XWR
MMZYV!]_97/T>3'R^@3=(B^F,-H^!^<3&#ZOV5K+N)ZN</0YW,F>\.:Q5HPF/
M*(*N:S!LH53K#Z4DU&Y(>LW,[>JF?EP[TIFER+;BUH$ILE'9'9I5ZZW( >!7
MG_.7AN3DQWD9AR(B<9K"AI4@-HY(XGD8D4=.YP]/9X="7%+O&.PD6[D\[]E\
M?X=&K<^X=;#EYIFVO:Z-+K/GQ3N#W-G9,G/[%P1A$DRT1\6>KMO-9EOO?.F1
MA<[$"+OR.]"<,%$4E&;\0?!L)W<3VQI5DY74#JXN#,<7KWS+7'7JK*0YMZ29
M&'TT(/]O.J#)LE3<1+N*_5).,/8KOXX4WL0]I><@X5.^H41M],\4:+!G4T]-
M(HK0:SA_Z/RR.="8%\S\1&)(VWHT,P7;)2NZM$@#U(/$!J>9*K)*IRY:D7L)
MYT:AT6UW< C6*)0-L[EI6AO.S1:R"S^;N&UT1^@SDXX^Q#ZE#C1:5]8BUG-Y
M8?&M2 ^J!JO-Q$3C\"CCKEBMAUUK?X%)P9MKBCY6!DJ8!<0Z=TCG]9LYMREB
M G4H,[0P3@Q^S: +H2^!O UC'=6_5BI4\[<4P;>0&*ONJ84^B^J(T"#$XZ1G
MKJ$QWL)!!Z4W\\P=%#E\UN1^*\]Q7DIH,O0844PJ+F*D]!24BF&1\-]G6/Z7
M@<$>>.WY6N+(<".7<7[Q;%:1;)DN-\B 8_ARF>NI9A5HHQ3W"=L1[0A\C<+S
MU[\,V^WFN_?ZQT]&S^C;UKLWVI].1L$L,3XN.I$BKSO%AH*%"DE<_X6I<Z&$
MZ#9T?@-=<ITOPAC*:P.(T;XWY5Q/P5J!(4"-N)/.-09KZ-5SHQV92]#LII*
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
M62]J?W1KG^XV")-<[87U3]UP@  "=6:CJAM>+8WZIGL2=&?\:D]"[R9/WU'
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
M/U!?*>4A0[+Y']YVM:78Z#QV4VUIJBU-M>5N55L:CP$"NKG'8.I-C,?PD,>
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
M!,#A1D$.$P_KM79>CH>UX@>5HZ8X1MG>33'H+R?6S^JS!<A/HJS(DZZ7X)L
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
M>>XBY!)&>> C-\2 5^,X%&RH&_B;0:>[\ -%-I'F;%$#G9Y IY67=H7@ 41
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
ML<UAE\4D@[$T^ZI\2E,SF<ZBZ9?D8J+/%GIY<&2GHG=/@UW+Z0M\0 .,=.>
M@((I!%8=.SAD@OEK3M_18G'+DB[EZP7?1Y.Y)G3K^@MS/?R'F(CZT'V!/<2D
M%$TG :&8<2R) QT)*0A=%]?%E8BM3UG8$),=#>3BS!9TV%FN@?EHG]/I0=U;
MT)K(5>05TE:TYJ4@W<+!2KW *H8MK&+@"^7F*7_.%:[K"^ZX]?Q:%KIWZ,_%
M>CO3<6&P- 4B)7RWICYU)P+H,O?PV [W5HGNE:X<+ PQ7\ 0"!2&GH\#7;_%
M1>!0EU7%CM#'8&UR_&8P[,BQ!#;&6VA2Z!\,]R3#L7E<?VGCL-JX<3K7<ZA?
M@LU[U[*37I97G&;_Z.H\RC4[W6Z%6ZW]W/4 8SAP0PZDRR"'L J. 4< <D]K
MXQ;;^:&$-NO6$]]XM_O9H]4KD=>GLS:,T#-"[WZAUQJH$ 0,08<[,)0NP$Q
MUZ^'"7F>A];GD6_7;(,VE\"6#!NAU\^"RUWH-!P8W?M$ZU[N\9YX<)^.'/?H
MT]'Y47!F.9]]Z^QGYS3X^?B3'YR>_;<5_-^O1^?_-.5+IG3-['UOM/W6C@R>
M)-%%,DEF2?SB<M6=H+O7^KTO"-[MG=R7^I_%4(B;Z/;^,=:=;_2+$]:O&5]X
M0?B@%Q$"VCJQ# *)*1..!XF+/(<[H0/KXB7IR?4I5!5_G)3LL>W1;Y#8LM-6
ME?Y51NRS^6?DR$[+$=(<:\.P[X5N@+CO(AI"(0.*ZR*.P =KA?I/EB/=1!Z9
M+6&7TSWZ)T8&5F"E^".;Q^.V*[&O)?ZT5>(//.%*PH"'N"#<!Y**"F:<J/_6
MBC2J9?S4K.*V-3:G-L)=9C5[JY@'H'_W #R\*31D +L>8Y03#T(0< >2.AL&
MG-"_ZW3>)X.G(S6ECZ4Q4ZAVR%]>'4/5G;X:7H$^;17HN]3ET(6^<#C @ L7
M8@"A=DU]%S*?/#Q^JH;D[=9'C]M8&/=SJ.[G,+%HQD_U5EOX\66L!-;8RN*O
M\72^KX<$0M:N._=#Q\4"L< -B4L@=3&K71I.Y%K7LJ=NJ"_[CV1VY<US15><
MO9H^(!#91-(A6&C&O1D"D"AKVO]%R%TN .4XX"&6@>2D/CG0#\#:Z4D; JFC
M\Y0HL"D<Q,SJCEV='3E1J:>.3O_K<QEO(.MQ&2CQ)3! &$K.@J ^B9IZ+G76
M(A*O&,>C0-I =EJINUN%N,8Q,MA=PZYL,N=$(A$"03A"($#8#:D'ZG[)D)&U
M@WI?,8Q($+8E>)6! OW$KBFBWZ,":[/'PZ=[3XKH3^.OZ>1KD4U(IK&57EJC
M+!XG9O[6JB+F+;_78;YT2<@"@C'%@# L957"ACASUXZ8^91.OYS'V?4GM<3'
MEUZQP-V9T?^)LW0<Y5>M.*S)'A@C>6#PXRT[V'>!+AV%0!G"GO0IY*(^M)M"
MN>[#/@U^&UK"^P6_8;6/K&9'S&F$D+<<3@])Y$'H2.Q0ASB>PI9?QW<#C,"S
MXKNO<"HAE'((X=T^N!=]T60[BR,!FU)EY'"?,R"8#$/I2\P\40=N NB YR4<
M7^%H0H(&44ZY)R[<0HDETY'B%&L6?>]7AJ0?>,2MU@'H>)['D1LR'H@@"!'T
MZM8!A[AKK0/U"A\5"WP>?5^,;-U>VE_8A Q[0&NO4-E7_3= (%*\ &*HK$WH
M8.92$D). ,.(5IZ<<'CP,B!VI OU"*%.YZ_V#HC#\ND>J(\V[AU4ORS01WTD
M'$!E$#J<LY!A@?6!O#1T@M!C0#ZQ(OHU'#MF"S2(TAWCV_4;1)N7,O=??+^I
M0=7'?.6^+(A9!,,5@[;YO/3Z.FD=B*'-$/4 \73T>+'H(*8(/<GVD[05DO0$
M<!G&V(,A@B3@J.Y,)20(P=IPZM8*.].QUU[?IUE]W_/DXS29*-JS>7ROV9<6
MEU*6Y%_N-?:,8;5/+-MR5UR!.(>4A12&F$DF?<[KT<*$.&O!@N>Q[!W1@FVS
MK#'<C(HVAIOABCTVW,ZNHBR^2B?C.,O_VXI_GR>SV[T8X&G,F(%OY+Z,(SG)
MZO1S/DM'O]G6'R$X!,"ZB3+K:S29QS]:T 8 Z/];N8:[<M'FLZLT4]<8_V@I
M>RFVDCR?QV.3*ENV?A%H6;\8 !\X(0^)"P2&,&#-N?0>==Q5ZW>Q+V=Z6_ZN
M=\*4')M$M4E4/QU]$K6FX!'F8E=2Y7@ZB!$H9%5RC#S'"=<ZW9^&/E-QO!/9
MZ62J@+9FVK\@5)E.%\I2Z4JXI"M+37F?MB3"AH3;DLGJW>4%V^J3EV*B_%EI
M;"N96EJ+%$%7S= #S @^259 V%1-8\BP)Y!$W/-]"=P@1*"J+A/,PVMMNB5'
M;$--K]64=5G'TEMUO$]:=W<!TRK'E+X,0Q#" &/J8^H2B?PZ%P%(L#9B]@F
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
MCP._\Z.6,3A 4\P8Q0P]B6X>>FGE"(ZQ'$S!TUSUYDTQSA&%,'PB$L);/E'
M:E#B$_N3CQHZ= 5&I3#/"S^BD+^X;N6-^W"X-]UMR$6\KZ;# 7[*%UFP7'J.
MP(55=_JHA?()TTF)'-T2UUVDO,4!:;0-\M'A[\7K#/ 0.F=5O!SS;EM?&J_@
MH4Q**PV*,28Q1A-V<_A$@#6$7&=^,37V]WYN,$+89[UORLG31^UZJ4XH*5>#
MJJ.[4;M[JW89"8M!1=!+Q[S0 /$&N/@A9=S9O=M4_]67-M-_DS?EO+>.SX3?
M:"Q&@A(&6*VBZ.>0;D4[>O-OC--]Q>V>Y+^S0"[&&V;""#R:"1^R7+X,[;C-
M$;LR \O )U/D4S"X1-7X73X>#P6F F$$@U['+H/BH;JK\_%]V>=Y,[QB1$E1
M]N?3F,6.IPV*!902Y6CV*:LB,)@LPRP>1BEXT@TI.4><9#[X]U1$K"FN,WI"
MY$&!@F>(X96")_8DD$B7O\2@5/''%*X&NJJ+AW+"#[Z#O #?YE,@1A;\7A,3
M_NL<'NP(<=+^W!ML@9->#C5>#X7;)*3\FHBT^6$G@#SS=8 \:Q>1\)UK;KKA
M 'B*B8:?IB \:UP;PB.%")>E_$_''H5>6KH@WN03MQE()ER**/2QOQ*85RB_
MGC6ORM'7:@AZAFN3ZO;V#"3M67-?#&]%)%Q<29JE%:0DD86MRM0<^BP@[3[,
MW.7#HNG%X'',1J*0.(AZ C8@A'%<E03VT";@I3 +1@J1XT/G[]>&TQNA9(5T
M[FG3T5# &]O+0!V,JDFKW& %G67T6Q<[UV9>H[L<GB%;0;3"<B*L(SA5)O,Q
M/-_M-+-C02-CR)."[JU/R'B'2F/ZU:#H23>;HLZ^>9IYIQ8U*CYH;9+QM!ZC
ME4,IACD+B>"G#]R 6D 3MJ85OM_<WFQC)OUEWD Z?E9!XSM?8I8R]I!Q2/P=
M:5]G_($6YRG<@3EZ)6<.R*5>8N;2SI,I]8A@HA7T2>Y QX&"^]"Z8.P"M/)
MI=',4 0;"J@?]NT,\3S#@EG?0./L1\6*G\CP4(*K#O,;6#K8^I1YZD_KFF7D
M@5)O"O#@@"Y*D7I:EMN:8TMN,E7]/MX0[O-8L-M2)KT15JIDR5V36S1S/K1A
M8%, J>.Z\4,T<+^2@:@!@3!4$D=CD:7:[^<,24SF&0$>X 594NPK;OND0@,-
M%Z'!:[$D/G@KE&6;L2'++EE).(5\V&?-V_B&<5Y8MK=\ZTDHD$VDW8%'!]<4
MM[<\18=26Q(2%=\8>4TQ_QIWEA8MOAMH7983-Q/$R2W>D'E)^ KU@+T #U?A
M[G0NHO ;!A^UM+TCPKX*.I;IB+^)])SFN3O#7^RPX8AORYIHI7--2.#CW<E5
M&C-PY@D(BZMY#71;<!:^*<%-H-=&A[@>D'M'LE\._VFX!4C63V.,/@WQ=,"]
M^C>Z!4]";, ]"9#(0T%X0U)EU7(E6"+<!#SH_&M>#H4JGN$ZX48Q1< T7/ND
M@9 CH('SI@&[G;Y%H0)T,.;4+701?P\626!'SY/17'!V*$P4H;#$=D\$*Q7E
M5UHE@S8B[K(@L=(*M5K\$VB8*1YR54>23[\\&=V'781SRZ5%/!2G0%8SYA4#
M.SS-A /9R8.G*F0GV0Y,[")%"5L/G.%Z< ;LA-?S^\C"$^0'RG#T4WLK+BB+
MCJ^YT*.0ER1H*-S W&0TB^HIV7)LH4Q/$=  =!D&+-#EYA3RR*0F57\,F?'
M?TS*:2*X8LDMYG9EZ;UP19P/*9CRQQ3>"TTLOF(NH?C'H#X>BD') F8==H&(
MJWT8@D1(I9)4.P%2VA:-^JP;=#J(HI!,?#12;D"H(2+HH5CG"/$ I##(-C&!
MY2^$)4QRB]D6LM6X/% LR^>_(/B\P5E0\]'%+C"\=.T]#;;W?JE6F"L\6[ Z
M92,&;<[6JQ%<+;-_:V5N8./@(*N3M#0U :3L='HGCV2I @0("\+ +)>#7>T
MCT;.:_L3TI7:;RC$EWLIG3,B;(<9[Y_(D->C%<PNGPO ,D+" R0/OTT3R)?R
MDH=F9LOI]ZS>D18]Y!'O_<DCC :7MT_["2]]04QB2VX"M*M=,4SB";S4A[]=
M3.7:QKMB1'F%)U87PW((7^(K+0?6%_F\-B4UGM;@Y#3%K% 6@NLC7=C6O(!V
M+L;WE 9AVP-";WH'+L6W@B<(J#4/F<=M/(F(!A]X!C\X0S^HM8UYJH2>T2QS
MM=E"Q1H''+^^?*6X"W.O.2LWP-0J'CD'CZ;X4?OHI0*6%MY@5 ;>Z8S*>9F0
M:5FG<]S$C7A1Y9+"*2;JJ([SVYAKA::I^B4I!7HQ6GU=B!\PD<O%[]%;.\MX
M"\N[IDB#_Q#UP%C),L;#.?;704# DJAJ7[Q16^%<B#>:HZ,-PZ@SEPM=6G>Q
M/,'7IR!>G\U'R%#QB)A9&+)'GY686_U<,;BH<IDIQ&\](]@!\)UXOA(KPN>,
MQDX\L1IP8=-M4@7.B[_E\L8NW<KP%L^LNY15Q6H!"&?9R>I.],V85: &BKMR
M-.+F#F78<=ED6)&XYJ;(VO ($^/RLN<B7.V29]O]O?A$J=II^U)#6/9N*I9%
MK=%LP;)G6=UT6\\,P\2,LS2UDL@+#4R0\KXMNNZ%<L'RFE(D'ND27UW#T:T>
M4MW4DW_Q4I:+FO,J]?^$!_U+9@@L4L3R69;F0!J7<XZ"RUF#4+KK)7Y)M\*_
M?LF_E0_3!]% =+X6>C"MVUKH6PQ#4+7K8I;^E=706/!6P;+07M*&Q>AN<M\3
M9J\P%\@A&'S%:"+C12P1[N.?1,M+< 2SN($30!+,CZ8])B3!\SG\M9=;NT$2
MO+)/DGV42 *6>5NBGAZ70-1F7/O[O)G1!XB)(R> )'O^>X%%7PUK'K,8^YDP
M; \J&ZF>G8/RA'F-MG$UG<RF_XH1BZ<"%RY=%^9N;PO063?#)]84)N<1Q_;I
M7%,M9'!;TPZV1'*A\A$#62WDD_.9P"W\$M<_\RC>78:!T#K5R7!9<$&18]WL
M4BB:L!/EIY):_0-V&C/WO#$+\.2$9;.P%4WK/PG?OP6>=8'CJZLO<UB"A?.7
M0E1D!3Q)40/0'4O6)H!8$N9S:YD,?N;Q*FB[&WT0.W$0.X9OVXX1QE:L@QPR
MH\@R0 3$2::_0$&OT<S^_UI'JIDQ [P7Q8P1ALF<(T_85B$=@ ;?JA'HF,H(
M/*01R&+\2^*M<W$:T:-LN;ZD&"[L)\7,!DQ8S\94Y\+\S)9\7(7J6A"]'81(
M5KJ"'2C5S5<AHE%S&>BE*>R/)Q08/_Z 0?J<E\Z2&EV\8,SI"3'SO+%;@Y<)
M>F/VU;2&3V_ Y($WJ4?%DPS\[@P0- B^PH:AG25ZP,V&\^MB4I=HU*'H9$_I
MGBHNY332%9\C9Y"9(K>>$PO,V?)X+J+$R$476ACGN-3Y]V>Y+7:=V"+\&"/'
M3<<0#R4+H]6KZK[$K?B3I=NTNS9#V5VV;<F=R'H9LJ_6/%,&EDOGPV. A,'!
M9BF\LJ8-!^5MKASOA5@_W!L@A5&_',.1<!M5$BK8)&MVCV08?(4(Q?M\>-N5
M==,Z.-1PV1)G<$(4XD$L?@<CF-S# 0PJ$E$Y1T/=%UTK-Y;H6VQ,]5$[?K:\
M8-S2G24/BDD,^<03M;AKU8BB_D#!].)=-4Q7;5#!#M4RHV*O'-9'C!U)YQD
M"0RJFK79Y.S1:W$:9.%0+E<BA5FN:6UXHG56Z@$F RO)9E(YO(HU5W?/#/W,
M 5?5;5M"P%^VW@(7Z\&,Q)6STVU&-M?N:L2$\1S-A4!%TDU&(FL^2]\+FE).
M0^9W.<)AZ3-V:W'5#[R#!@^WS(4$?^3K:Y>-#^=7=.Q\ CJ!1.C9*G4@"?,%
M\NRTI]#L='S"S>Z#QWI7S,/,9OJ2#$K8P GU9 +5W(RKT:#ICJAU1&=NP;UU
MV2]%#06G2U#0NH"/BQ5@V-L.+"%TCX2/E0E9.ONE>+D5(+Z_Y$UKC_P%N ;W
M"_O:8NYL4!8LZS++#H9/K$<HE'[>\.U$QAOG)1>%F,HD<2 )Q W-LD5C[ 1H
M,F;L?BM.><9:8+BV)3F$!0CPLHQEV^%>;NO+Z%!T4F0 7 +[\I ([TW65G8V
MQ>1L.A;)TSGILF!_?]2N$$N_\B$-7VX_'U..DO)T([)W0=GC7PNG.FV*V^E0
M&Y:WQR]BGLN_A6UOI!-*NZ'$)!&TV*(8/L)JR6:%_-D0'*7!ST"J// *'2:Q
MQ*TY91?]:8MI/[U8UNM"'&?H9W-IUK0EV;RGWU?P7JHIBHGRCRDS:+_R1N+A
M0B>N%HZ7S\1QA]@_'6\FVK8+QI^!^?6?&,.+)TKUU\*ZZ%JQ_HS'*)23;(!(
MW5J75-ATU4=+%K\2A+=!J<?QH>N>K>.8)7A5Q''211Q[Q%&J:-%!RG@E6?D_
MT\'=:93Q<DAB2]5S[4-XP1C'>J]O(E))_>@X*#9?"L+6?A!U.-6LW?ICAV$D
ME/:*8MC%MA?_YGO. CLDYU;VMEA>#K0,U4@VYTRKCJY="-4G+J+ 9WX]J>[8
M0SLG>S%H+7LNDLHZA3#-]<:-/-:V2YEMY,%[<*C^')TU\'+;T']5;0L56$W1
M_N!)8JDD"5/A7%72<8C@&#9=8=%GT7)0;K';%5)W/7<(G5,\PZNL ITRY:RO
M#RLH[PAL)D@Q0T!\#<(87;H6BC10]3?U-F'UQG@Q+WMOXS'5#5Z""K'KL2->
MFP=AZ>VEMY:ZPL[(C4>9HO%9G0'%&L_R\-[9>#BEKMAWJ)FQ4S;L[%L +QGZ
M$:.7GL<-K;W<W@UZR7X=>LDY8O32]^P;T/4,@(<@S]X4RQ3_BF!%WK2^W?,@
M\(7JKV>#&R"$$ME\EH.4M)(=5(71KC#]13TW6!.NYV,N,NH8V[NUM:"R+4])
MA;P!%_.FFR10L .\!4^9B2\)D(P1.C87IO54;HI^CIKFD8ZE'7@EW9>Y%^2.
MM!YAZVK3+4IJ]]7&/B1WD$P(O#T]7<0Q9I;'R1"$+?J<P_)W5$V85T)?G9DF
M71'W.:,W^:>S-^M(:PP[!<1&+R"\3&8N#*O'@K#HU0V]U8IUB0T7"KA[^;)A
M_4YP?MR0GPH[)-X-I?..'ZI:6LIKVD,01:OPPLF%%T[ D^AZ.[ D=@W"G\]I
M()R#3*V#JF#6V1V:>C6C,[+S6"-8V<[_R.H/_@'\]A5;'+'9ODTQ;_3=/*VX
M 5!_V?#XM7"%.0EUW"@&]B&H5LJLK;BCL!MOBF$)OVZ3A<AJ.%6R7]!%E#?L
MR<FW!=8&>[<D 4E!&N(H3)=PLZ-IY<L)4, EQI?P''%<M&8XVIGV(2F;_ Y8
MOH/8<LP<(<^TVVE-;H(TBG/>90,>&H&IT&_S\(Q%.KC$B,:!]/@.]U#$M7U&
M@3=9.FSR-),\%S-N;D&*MUTDA)LA?H7>R5U5+_8M/+[-?RZPU08F(SY#[J>M
M_<G92J!CW8QE]9'ABK!HVQ63R'%036\FF(1LHZCD:<ZWRCSV#0!A3#P@D[QL
M\3WD8,Z4"*?A4_M8;3J_@D63>2?@-I0X$X9&I<=CVM)^DE 4SYLMT00#EX)I
MW<W)G%V(2#]SBZ[9Z,Q]&%Z.(ILLA=85)9/ [TQ@'B67HJ-MM1''C4JE=;<L
M",)^ <(? U1W0H-OL!=2G[BY$_@/CRR"$SA&W!A:$5ULM)%5"5H6HTXM"1"*
M>!$>=Z2.,0(XQ2V-VRFIWIEN=:@RVQKNXR=A[*4ABDGF>M<NL*D,$VN1N/Q0
MR>*5\Q@S9/51NV)Y::DQMT0@:/[!/T%;]V>;VHI)SLS/A-\1@:&OP8TW9LL3
MCI#ZYP*5@U, EL[O2Z%;)7A)Y; =N-FZH=@X!4M[VH@X/VC@QY3-U)QML#@[
M79/[YH.RSVI$4:?5-;5>Y/:(:*ZX;H=)9@C_@#P#LD^8-=55#J!)AU-(&='U
MF&%;<JTT^VI=:^EVAFU+[3U0]N5PRII//N0CZLXEG4Q[+8NV\9@M6AEU:S<T
M_6I<M*$%::@4-K,$H^MK04XU,A&*(3X#"L11Q<9-C8I'C4_/9M^,[G%_'L0,
MTIGR*A&9W,6$YJO^?3&8#HN+6Z&TT)YJ/E7YJ E'@XQMU^CNLI4VS\^HS&++
M3D++2P+?=6W=-TQ/1)J,U),'.-M19MJ9D\:>'T=&%CF1'O,9E;&51.%1CJS#
M*(C4QHJD;S-]P'C*?PIYJ&T;_%A+ZTN5OO8#<SRF#7S=_+C'S""/XR[NC?20
MF9$1NKB^I$Y-]+>\BA':UL/99^ILRL2+!F_(YS$_4V-NM2SZP9:73R>5^("4
M&/N$#=DP=-BA&W23ZS,$6^?CIOA)_&-!KW23.N GN/___<$PQ8B.)9,YV#-<
MY\_2'(_9[XS57P5;7;7=5\?WK/5S3A@]STTOF:/M)>-9Y(\8.9B,%I=G->;L
M"?^E8L)?Z;F('>A(R?CP_*MR.A6,//ZFT8AM[;]T^K^MMF+EBR^(@2U?_?]H
M9G6Z,+-ZU?R4]W7FUG<X\L6=X$\AR;SPB+U3B#R#?).Q07LD K2Q,2CSTWTY
M %VV"P-!D<'F9# _WD*1P;LD ^\UNN$F[_]^5X,E/4"#KJI_^J]^ORAN;T]#
M:? @*48/9L)!&%LZ$'.LW,#MZ&(W^_*G+5Y^+24\MPE;O2N1R>M?=J9E0%9S
M;-QLSX# =UK'.=3=U$T"*TA]W0E]+[,\CN9P_0!^/._BA\(#S:HZX>ZG</8[
MMWZN5\ YM:6P/V 5 /MHV@P^:(.B7X)WU_SW!P2^@'^.+VG-%/;_-)H^#*H)
M_^6'O]D]U_9$2;]XO?F:_EV<\TX(=FN)SV%%NR?;$]9T2EB]2V%EZ'K712=-
M/=,-DB!*+=ORXLRSO4A(*]LUHYU)*V\GTLKIV::25DI:*6GU?J25*37EU#/+
M,"/;MJW8-?4X\71/)"7T6%](GVPMK=R=2"NK9P7N^Y56;RN"^ 5SR2P#>$MM
M2YNV@&DA/72VK/1N3;C!7!-NV&D\^: ,; 6=N>$&IN-&MN\ RT9)9B11*!JJ
MA6%HSS-PN^E+&'AE^[0=<*[1<ZU=<N[16@QOP#!X QSTPSH6<OR6A8S,#'PW
MCJPDC"+7,75@'\9"3NPDB?%*%O)?Q$)8XP&?/6^SN\$..6F1^%YSBKM1#3\J
MQCM1QEO'=U['=[$)[G$2F9[IV'Z2)IYCN4)U@9&:O9+OO%VI+K.G6\9;4%WO
M),D0LZZ" A,G[,8Q NNJ:3-\TAYK;"B(7]^^DA%WNE-'HAJ#SKHTLRP!.](V
M$\,)#=/U8CT4P2S3BK<,9L&_4+"6Q5XM3L=V#N$IOA7U^98C7>^9G0VC8V<W
M=@/?CFQ@X\2.S<@,8E=$>P+'-/? SB^S?I_3PL8N=;!B9\7.1\G.Z[C9DKDY
M22+#C*/,RXPT3ES;R00W&[J^X+?N@)NWMZG_4]35(&_N\61]TS!_/@0S'[^E
M?1(&M83:*4:#5^!U9@%>UO@;E0<,BU<AO$XNN;3I)IQTDLEP.P"/&;E9'&2Q
MZ21>X!L9N/T6=_1CUW>W3#+QH?-+<DW!CC+CGN7O4DJM._?CS#F]@[";DEE*
M9I',\CL8CZL'46 DJ>7XF0,"RW93D\DLV\\RS]NUS#I2[*&264IF*9EUQ#++
MU"T%/3QI846^XE^I5%A\OI-[S\V4VV4-]<XFK;,"\ZW:Q&AU<3MDC06F-6LX
MW_9<97WB>.<X!BNB!4@]/)9U\KYA?NZ2GKK="MMVJK^/JD>X54TD-I":9=R7
MS:2JVR$N=5FT<Y99]]P^,P*P,TH[/KS KAKT[+?0O]0XXOZE.VI ZKRN :F[
MYAQ>RI&[$E+GU"!_Q-.GU$"%VLLMCI*0FO%AOR\^%V>QI:C4!QI;=>9/HL6U
M]EC5OW>]BZ@YT4P+\)F>R/A!.UL)OODK7#7.G^C/\;1NICEK720W!_VH_=HU
M#VK;TU#OR?9.O#<1CW U]T4QH=%0U'2%-[/!]D3XXR63*T6W3OFQ[;"RMNGF
M0\Z:XLT/@))'+76=E5CO429^&'WVA]C_DUILS+32:8] M 05#6=$PR+Q=]N9
MNVWRW#9ID;HP-^)HNJ:*N&T3UK"IQIZ?W:)(2E(OI4[@49=+WI61FD O:=[4
M:#_P 49PO%VG/M[7LQS1M*6&FL"(_?M1*Q?)\@?C1V8?+QFJLXQ(9QK/;]!U
M=E5[K\4>LC3Z4/2@97M,MP5R!#H>-)IT[[8[Y<(DU9FMQP$6?,5E-T <29*H
ME>V+QCJ/8/-M-C.E:^+%.QXBMY$(:&=^S]_S9^T'D^_C,ZS[)G=/\$;[WF+&
M^)))Y;B1-T+Y3\>\"7$S!E/VMNQKX_N\:<5 VR&6V 0VV)K?8+D%9MNKE%A)
MZF+6=E.<\#&>)3=>L./6HK LN93I3(KYGLOS[X\3[U$6/N'43)PQ N0S-VB3
M7PKO8+?O\+#8X9^_A"R$I+%]U!,*6?:^& Y8OZZ\.V6QFA^Z5G(WQ>01U[.;
MF=0K'2<I+QZFD1,%=F1$CA483FJ8EFT;H>,Y66K;F?6"J=1?BAHM+;!P?N.O
MC+_\PE\W8F_[_)SJN8G2H&BDB=*MU\7&(\B.U_GGK/6\SLSG7:\%M^O/KQTZ
M30)GST<F%:XXMI%9<9!YKA-'2198L6W2D;EF'%B&_5V/;'8(^&Z.S-3W<&9U
M@;W(:; ,:Y2-[>*&W.&:E WK"OLD1LG-R&+4"O?8GQ>4"%[P@\-E! U\%7WJ
M^!0/[$7.1E5V8[BXC4)SF$2/02YH[T#T<D'4]0LDM?]X#_)CIO,DZ^<(?AZ:
MQG O/N2B&C7WY9A6=IM_K6K>9[B%!C*KY>D$>C6&9 QM?<BB*Q$[',OH:7)'
MFA??KO<Z1E^Z&O\5J^$=U)E/36OK*&&)D]^CL;N("WT^Z  $"?KQE?+L3^L$
MFN5+ BT+4S,*,CV(T]3P=,/@"0?+3VTG7 C>+03J/A<O3X8ZK?AQGR^\"]R/
MBTH#QZT-X1_'H#O6[K5MMGNMIYF'E1VQFP2F:WI!E%@B4.HEZ6)'B0WW^ODD
MSL9[;=@?%PL\=K77/6R>.F8#H'#:P6^2Z4F.VU*?[34":-/S<;N*G#!.8S/U
M,S\P?,N),MT0L&,]L&SG%;SP+W[-OS9M_]E$3]P$N *+?MI</XV9IA<W$C$&
M;F4T"VI_6SHP+/OCHM(_*9YSC/9,/3MPO<PQ,M/1?=,//=/T!<_I]A*TVN8\
M=TIGJML?S3V>Z439"1M)O7/66YG"!4L%'O/3N75\:%'H2CF]P'9#,[7@?^(L
MR +32]N<7NB["_6]^Q2%T9/4%5FP#+S]OR[%1G7?,XXY)<ZT/BX"S$]*V+I>
MAUX!5]D+[-#TO,""'X2)F8G2NB2QTD,*V[=--:82Y]]=G(O@P0V8L ]%FQ9J
MX[12U&(^58/]_6>^Q<#F;5D,!Y2=HN@!1=FU^R+'X>C-3%*ITPKM9$H6[^2!
MAF[L-,:D:8*&/%B:ZR *;"SU585;.ZYJ$0 7R>L'V#.:-8"SDQ#)P*=]2HFL
M56MEHRV6Z;:5;S'.,>VTU3MT[OBV;W'\(9HO<BQ+S-@3<W._YO63=O,DY0=!
M/ $_#;'?_=T]OT@>I<*F:.5B)(3(2HB(&2>IK;G'TK<724 8NPGRBKD-\UK,
M[[28Z5A!%@6)[X'><EWPS'W;C%*PA!++T_47A>79UEW#5K\BDBLI@K.FZ/\T
MF-:#_.G#WP)]'FZCP>?-:^7_TN&[L^.$EN78V/"AYMGI0[TVY=0-X)M+ZG0$
MR>?W=G0I#R*]%>J8!"F(B-%$#,_$L9M/F)T?5TV;-9(&(!'=ES0V1.2.YJ*]
M#2;3X$D%FZ<XQCDO?395 1$CQ!33NG^?4UH1;[]TBG&/UD_3@MA GV[1M$FS
M<VD8'F'%BMHK/VKIMQPU1R.-O1.OMFSD43XSR9W>GMURR0BC.I_0V+H6<=#*
M#I;,9-I8FLLDSSNB.[=#C]A MUJLCG:2#V9:]?3I&';E!,8BLC_QY]THLD0,
MO>("X=C?@2'@'O)_5S6?3[0PMHL/C6UFOJ3I3<6(U*3X(1TUIG5)-7/%WP+6
M9+ )9SVFA]DX.S:WJ,MY][KQ21W<12AFOB1.V6)JDF O\JKSP5<VQ+X34C<%
M7@#D.J(P(SRURU\S>B7))+/)&5M^Q\@SZ* EB _\^#ZO!RPICK)S..1XE;D)
MBBY-4)PC%[K^"P,3T/(O;N"P63IIHZ&*"Z<'BK\I[AY$<D*:EK/P4U GI1CE
MRD:A'3OU/LN!<?4  HDU>#OV%_GPMRL"F/:E-7-"A0.D:53T/4T?91-XN['8
M</K,2..I4QDSQK!.J/MN)IR)I,G.S&IN=<Q';7$52',E:G8VPDL:@-O2#SYS
M@HB0_ $M[/\P?@=] S_&C3W#349!4/(YT[G Q"#("M0\(J](>"PQ"L@3F*U$
M>/'>3N[KHCA>F]/2I:9$3F991A2Z:9B%<::[CIN(6L4DBB+9YJ3#DJ@\9-M/
M,N$+;?!N;4UP20=-,?KPMP8%!KEBS0+.^]4V)TX#GY1#(B,411_0;;L%WZPB
M>5OE_?L/8!UAK$-@G <E1U:'5['FZNZ9H>/_V^WDP"%-@A5C_6CB]'B,>$*X
M_]VT9)!(_%3K'B:-+^^LP7*8TT0^_!1> $<'-NU\= (LWO)I<WQ48SO^#C3!
MI)LO!PY4T[Z.]EA-AP.R$?G@3L0DUB4920RPA*L5LEE>,([_ S-Q*C,G>-WM
M2.Z_+&[>7\CVECFL&UXM\2.(G4G^.]X'%'TU-R%9-EAEA"U^/BGZ]Z-J6-T]
M$3KUK/_4Y^-8&0:03_I=)6MJ>/[C@JSIG '<I7%>#I9A,IFQP*Z?&6'_44-7
MA@!KB%B44"'S[DTN+8@F-..C2)KQ&X.RG0@8+_X4K(9IC8#==@72#<35; @D
M$Z(HR-D\Z)D)J*VI3>8S62W\>8R&2]DCVJ\X,KI,M64%CA%89N"83F)FOFG'
MCJ7KIF6D49Q%Z3/BZ)*M?XT@>E[0B(C/[J6,+"M)AH"S(D]4;96;3)]ETP6<
M$&Q>4,RW)PZ&V80#X*H251\&!\6MF_5!IUD!4>+<^6+!:/1FC$9)]J\T#G=M
MP^TB6E47Q!CMWBS4IN 4U6+2>;:#LD;X%W&-9.PPXX:0WOFL))F?PCHSG[[#
MO2X+7[0.C" !D%3X!(X:K]LS73:$=LC'OB\;1OL6*FO,[U=9LT%-RZM*8KQ=
ME,3LKNIVJ^FROS;%Q6W*BQJ:90-CS=1-3<</,L=(;#ORDS0-Q#;HGNE+ V/C
M*'/T(++<V [L*'/-,!"]V?W$\I^O0%K['&-^WNRO5ZEVD6GIU?7Y+^%U>K52
MYF](+QNLX#@.G 4K021V@Y19%FB)Z<B,'A3N&*V1DQZL) *D8TDQP<Y6@.^+
M\:0KJ?EU1,!8S%1B,0RV0S+UG_\>AE_HG\;//XJX?Z--FW9&M2B58=(:Y.OT
M8<SR"RS"1W8OEX)H=*)X?&#9&#3%F#PG>&3)AF&7_%:#LND/*U%^P0[U3M(!
M"]>PIPQXH>5**YM[I4N7PP4T+P(2:DB*?["+NNH-G"3>Q9QA Q^HW(5 R;!#
MI()6[Y!08TO43:^UQ,6C1SE-=Z?EMX'S%@W-"60LA8BJ+D2T>+>KJR_/_OYK
M#GX&"Q1(!KY<+BK]O%6U=0%K'(E,WNUT-&A^9I/1V_/KPUG]S%RBML@*G"3$
MN(JBM64VUL]+!YG/UFJUM_E:<%L)3/B[DNKIB&:6WP3Y:DPOB"5 !9;,4*7\
M675[ANZ;1&_SOY/H[^>9+6[ %2QXD! -.R"D&9/RY[;\C7T\B_J54I\_\UGE
MLZ<WKBA+BN[,=-+GM2^W4R*02?Z-#HTJKOIL)PHV-9X'8D625/8R1B++TAF>
MRWW4FA[ #QKL91:X98/O\9C18^7>*KFH+?6OM7.VTFQ?>)7=ER$P8#@:I""A
MQKC4+_ >_:=GAZ1'3A88CJN[H6GZOA.Z;F8*3>!:F27IO,A)PL3631>N,&,]
M,4Q;%RCH,-2C-2;&FN<LZ+RCT#]?+B^^I)?7_Z>%GQ,M_=]?S[_\DGZ^[FF?
MT^L]E_3OHJO!)H;CVF/YFR"OGE8(PF(9/Y;=0_>L#?S7$E@Y1PA'>4=5*^@@
M="X*773SQ","K&@6W+Z9W&7Y@%D^H:_08&X?2'$PX9?*R18F<L%_JAM6A@=/
MFS(W)2G C$"OAR3-:"#BL;DHF.GGP_YTR&6HD#&S45I1/BFB$<T]*L^Z+4I$
M&4D=%+V?FU62?3:.@?]F4I0;('U>K$@?WE<@1^1]^*AE%'$F:8<BB.=O6?TV
MR6DP:(8HGPL4F-(KL[6SDDZ4L_P X![#_!'ETKPH6M;@9BOI=%DT10X'!X(I
M 1D\K(B"4G9\3$(M$TQN$H1.FF26YT51DCB6ZX2=3V)&LC&>1IZGZV:4FF8:
MZ)[A6H%HMID$F?>L8%K[G.,43)?I51I>QO\@P92D_TP_79!HTN*+J^NK@\NF
M]9)FDWU^S3&9V^SB;U+ HN9TRHV-EE);2;-_<+'E=DW.[ 03'%D:@WL6IH[I
M)HGP,'73,>,7L=D5%]#I-YX+#?ODQ0S.1R#=L:8_!C&\3<?W3<&8OO'1VA\8
M\S6(JU="+_=-$EX7<'8,-[.B4$^-R(EU2P_BR!0D802V?AB26-LU?%.2<*TC
M)HG7X%\/ "BW?,DN#US3C5PO=M+0RMP@\LVDE11@X!V&+-:VG]Z4+&SOB,FB
MFP^_X+KMPSS?1.M]9)::L-?V9L>=D]EYG7_;P*OTG"@,TM#4_52/HLRW,B,6
MZW:\Q)6,-S_TO=3RW, P,C.%U[/M5L_901 <I?5U_CF^^"75KL/_+[TZOAS2
M>>L@\&*IN18QA.YJ/9:9(.(3=Q308>(!*'&;LBG:;#X&J"B^0<!J<.BH[UO;
M'61)U$0.Q5+X#CR/[J,>;]D&W@F/N<)5XZI&C*IX$,B>#^3Y,0>3^5%P%X8J
MX-X4(@V672G=>2"]&(]K\>"NW.B$A3$I6 3N* +NIY35PHXX>"$XN%,><:RU
M/F)?V_9U/ ;%@J/-C_2ZRYXM!<Z>7\!CT:'WYI\.!RJRX!34FND:T[KBI4BS
M$V&TA_(C0P,OV9'%R')=B$Y PD$&IYO5(V L;"J*%]"=[("M<T4+V$**'5?;
M)6?%<2U>RY%;HBO69#)$OSY<&D!DH)$;BJ_F-\.RN6>WJ7'?EK]P><O!"P\5
M01Y_+P@# V=/^&1ZH247:H\E8B:P;UFA?0!.('#.QP],[%Z,-%%=HYDF%=9X
M/7QM]C4(4RV>(OWA7[![[!__4]TT&%1D?_V N\3I!R^@+W@R OL@B&,@* KL
M/CM3_DL-1/AHT-!.GV,J%(,Q D\95X-"VA4ZQS9&_U#!>3QI8Q3V)488&)'S
MO(2@/X&!$T@;]O4-$DB!O1U9Q*+[FUZ^71Q[<,/C0#72P:30?OUX]5&[+08$
M&Q"+$LV)'A@2"]B=ERLY?V;_((32[3#GNV8:?V;7D;"I\U'#*S[X?1ZK>CAX
M1! Y/J%Y:H .&<H)-@FD:H40(^D[+-=!L8DH*L_6-2YCKU$X]F;13;<RD'1V
M4XDY1)",AYTY;W*4T4P;K5'QJ V+N[(9MF$J?MK+>E'*+OY6&OX* _81!N=B
M*5Q_08D:,!;AE3'@_K7 .'.S.G)C!X[N&+KE!'&8NIZK!V9KM%A)YDC*WS0S
M,PK=R R"+ @2-_,<;B>X=F*9X5$J_ZM_A)?I611>I8D&9L"7]/-5>'U^\?GX
M# '1/R*?R<7DV+M-&\,A,K'&JRF:MNL:=?BAS-H$[#NM&O-\6 W2%,B) 7+P
M&[3U&^;OR$DT>AC[$EGJ]^)) R$_K)X*Y!6&5ZEJQA% I6?B2TJ]3(>3G$*=
M5_+#I9SM5VPGRP+";Q7T:IM='"A.3",)TCB(8B>);"=U0ZMCD<5^*,N9..PP
M/M%3]Q->>A4B1=!__;.@R@$&3#.VALAV5<)XTX62WY0?.!TQDR\;06O+;_L!
MUG;)]6DU;43!0E>D)?+IC#%8&</70L)0BKJ-'<0(UU%&!X<V[236=3U-#?"U
M4G#Z]4P(3]_/[(5"<CKVF_64<3-/&>FW<5EOA)S>Y;'C26-3CIT?-I$0H@>7
M2#-VQ OB1J[Y>MMX>]OJ6OT$CN5FL6=E5FI$EFU%5BS:7MFAZ_JG*'JZ4R<J
M1,!/<WGUZR;BYQ8QJ]]?_GS44L3%+U>XF/[$1 9#.G 0AU1=R8BW&O%_L O;
MGJ$/#]6(,T-;FD8MIEDS05'K+!I*=VZ^O)A)7M^A0\410PC/+_NL%[3T*^X=
MDT//XP!D?ZP$C;"Z!Y&8O<W+FG=.EO&I<K=ILM0-?^L(_;+Z*6:3R-3]"ICU
M%5@\A%P.R+TSP/_G;AYQR1FQR<S#1)A@%9QY'T[!WZMJ@#XN.0 "2Q22S[Q!
M(-#5'4?WD\AU?#]- R_SK19?8(=1)OD"06@FF>_K5@22)G#"P'0= 2_)$BMX
M/CVX[CG'F<7]^\5%\MOYIT^4Q;VX_D=ZJ9U_O@X___T\^I0"!5^E\[G<[[_J
M97PAB.38UMJM;%XP=IW,R?GFR!)$B?:E9O*2F(%?8G=*$1[C61&YO!2G1$S*
M6P897,#=]985Y=!X#!X<07%WPQNX8YT2=DBAQS0<#'DG7J4D#']Y-^K:07>8
M3-("Y->5\SU#6/%2JU6:)[!Q[LJBW85E*Y%*;)8]IY*B%0+A+_9&KG:2EHPQ
MN[G;\)MWR$)>E=O#4%_>K8M^C'4O0\Q;P1L-JT?VKDLN[2H9$$6+/54DA25)
M3:ID(H@Q+]>LB[OID%KJXU3Z@D-EBF]%?TIE*Z# <F;/K!.XIU"U8!UQU<+S
MR)VUE_N;Y=@V4!VOT3SFD>B:WY@D C9J!0G%;A\0+\=!?;SY1$XB(01A.-2,
MAK$AA<5OZW:& 0;P"Y23'%=;U7+8LU_6_>F#*!_$^' ?;5B,"+708R97L:LT
M#Y]+M=ED%U*+CJYV\ ]87#EAI6/L381!"FMAMM#: /ZLX/E+(TMXN'1(PPWP
MFB4KO2EN\<XS]:9_H+6Y9%&# MLDW*#H0"'U43L7Z869XE(VBX0-\VC3&!U6
M&?=T9B/I+6;PV\]M(J$"Q407*MX<8QJO:[75811G%=TZ2=\24%L/-J^/FFF+
M;YQ;J@R67$PST;?PCOA,VK17WFS^Q$GO%SPALOKU\\G<=;UGGKY 4[*B9BD.
MVA<D*>E!XO1Q'$,[.DOL7WL+WM6CQ]'EK.88KY'X%FNN[PJ6]^D>, -I+9DC
M)UTT*43)GD21++&'^I+GB_MY<Z_AZ$3,!Q7#ACK5#+\R1?N5%79VQ1QL"8OU
M+[7(GM8S<SH>>7(36 3=2SBL^Z<Q%E:PZO6'O/Z]F(R'.;J+.4Z5*\?HV['D
MWI2!9OD94KN@]M490)AQE*@^S('ND2E&DMDGG8;8*UHU=XAG#[9A?<*(ASCW
ML_[FBS=C+<Q7W0:.F&K!Z6+VDO#X,1G3_^&.W 5ZW22.)6J2)74^?&K*MC7_
MHSQE19*3V""J*]QI"NQ\AM\+V/+W LT-RGW/H[#=;H2(ER:FY;D8/8]TSP@L
MP[)LPXV,+ V-+%R(8PF?X;S=\$]5TRR-2)G_^QSF21XAH2\&ET;3AS:X-*K6
M35M\>:21RXS5 N/XW#44('4AU>?LF4J\+MJIZTD2!&;JF(;ENHF;99Y 5]H9
MV),+>*AV/R]NYR,C+7I.D-(6T%J9>-R#$X]$+LOKR!A5/;4>-(OG:=S)!C>/
M11C;()>-U?FM-XZJ^H)LMF[K-+9WK%H?:0M?9-97.[J"_67!D!7OM:[TZ_N_
MS&[<)9-<#:J+_?=T<,<+>&ZJJ:B Y?8I@YMU70(9A&6.R%B9)5GDK1[<RO-@
MALB,%$2CN?A6-F!HQNT@+@P"47F0"&)T(\AR:G3P,"8D''6,^4;F(\VY&=X*
M=?_"U^&0-@PTS+:.P>)""D31@ZF3H,#:]#L[I7L?9C0L7HXV^LP80)*K\,V3
MAIX)8U-T3U;=>-Y(!/N%MHT-C>33X98?+7]M,)R6N1]+BE [5"(WA*4RJI%D
MEW*,76N>+K3'90F\25=G1G=M78KG'MW(3@+8=)*;,/_4WE+%.M>]1L J^*-N
MGB1/:N-U+/'0V(^6E&YIA]:B@:&TZ%ZUZ.Y W-UVUTG9C*LF'U[<?JI&=Y\0
M7KIQ7L?/[-C0[<3+O,C5O=B.=4=H@<@([!F =Y9%ONFD>F#&CN,DJ9<)BO 2
M/SK*Q,SY+U_"\TLJJ+O(M$\7G_]^]NG\GVERI#D94KF,>+B0;[U?$1L3W8-N
MJ6_80F1I5E$N#W;P'KY\HBNV'6CK@>%^3+=11_$A@RHS"F?RF 9,XC44"%@5
M] /I3&T49M?V:OVS; G;Z*2*35NNP 3 K;JKJ^E8=!#N0E"[5UO-6]1;W"SF
M+SX@8510F[T6O=VPQB]H8;424>!E9\="\\IOWLR$$3!6.=<KS[665S9D6:^&
M+0=[E]$=1>]!HFJT#HNNJ!H36==K8H_M2Q&E$-,-,5+*FF8WC"()]8!][]K7
M[MY5V@#1(TVBOV7E&TW1;TVXA6WZ>&##P-&=KGC1-[PP"\/$B$V0^FEJ)^VP
M',],O.<,@SG]] \< UK5OS;%Z1D$<RT.9.-@472N,P[V@0'G[LYU%157U7#P
MB9HU7-3DU#Z"Y_,+!2R+P6K\=^!:>FAYCF,8B>Y&0>9&=NLAID$BV09 #68
M7B0-3[)L/]"M=IB<K<?^4=H&5&&/9@&"OW^]3B^UJXOL^K?P,CU*LZ -+4L3
MJ>7R=B;VVH$L;<5,.V];9/$I*'\+]%!R6</:_I>L)S\))S;@NE6_1+6LZ3^)
M.=$+LBY8TPMYA.Q'[6KUZMB\ GA3T=V<]VUJ$$\A>ATR'<!Q9 *,4-W>(J(#
M-J[/T@+==@SFG/@]E^PZ,JC;B(P87*/8 +K7D]0U7=,PHCCR(L/U?%UN'1IW
M"_X"[QEVD!"Q85(5+Q;G+H]4[ZHZ]Z._O^)<+#E8303?K<A?2D9CA1!OY#U#
M26R%5-26MR2/H)=VY/MZ^E_:=G4V8UQ)MS^[>3H33V+]PUF&&RT#M*V[7/;*
M7N,2?[9]:[J! IW]B'FCZ@&4".].UNOPT:]H@(!XVE>CN&<V[7GZP6*YPW*\
MC*4V ]OR/#> ?R2AF29)%@'')XEEZF9J+(Q-E;@>$:!3( '![O(KK\9)/\/K
MUHJDU,)8\\#MZ?KBF-/O783_VDEI<ZV*10>JN7D774O"%[8GIAAQ<8\C,[Z*
MFMMNEB_UQI9UT AM>UZ9B4GMYR7@H>W!B&/O8@F<^$SIGQE;;I*DGAFY<:;K
M86@#E?M9JF.$R-<ET\_+3#^*73.U?-M/G""P?(=^FH9)E)C6BTR_G5AUGZ_/
M/_\=(SY??KV,_Q%>I6#@?;XZ3]++%Y;W[2(1PX!T!WQB7+7-1>5P@30_INW_
M+:%2%ZI9\XGL5^>M'RI=P\H9>#.XE@NISH%KNE::+[UR%JR+':AO6*/'R4SA
M[=+80W_-6R[6YN*D$;BBO2>OT^W"9/1(K>KWI_6R_HZOYL ,7N*?^ X7MYG
MKYZ/0*=/:<FKF=&P?=N.L3-]",Y5Y&5)U#;YM2)=;L)AI5GH>)&I>X:=.$GH
M@&)J*WU21W\6 ;GV.<>)O<_"\TOMG^&G7ZFU<G;^.?P<GX>?M///5]>7OV+H
M]PC#O#%2*\TJPG]@_!7(&\F@MVS H_PIG[R)8YJP;2&;^BCWKZ6[\LH>%LL5
MH:T);]_8V4XR9TD]0=JFB#BD8UIW7F##YCUQDIU'JG5 *8$M(T,552EKK,$B
M8_+S;ZKJ]QD9<SRS6-O]H(%ZL,V\@+!HJ,7<9,X&+2@3:^DTE1!#A&BW2\5!
M[GQQT&6[2Y_X+L6T2\N*@S#T/*7FP6LDTRD@U>TC1JK[KT.J!QM!+S81M*^1
MT\>"5 ^/C*/%Y*U]NXM>!UFT0SO+$J"-+/!CQXE]NVUI:B=1M-#3C5?3-M<5
M[]>&,?+KZA<NAJ^*/OYO6>PU-N0;']V]=FXK1UB-30[179T/Y*8Q-]5H +KM
M 5X"8<)#]H'H-E],SF[R_N^441$[P0H+6D4U8!(:T_-B].@K?%13;_'=\(>U
M?>B)$?%O5%!6C,C\IK; 3*FREZ0Q!/PUVN8$4J8)?ON :A)3J]T-!>IZ7K?+
M('7^ZWE@>:O4I=V<F[OWB2JTSL_QN?#;)PG[35.FQ],)[\7SQ[2B*=9UR?+0
M'!(M8<?19<YIGCBE[6@J[(2UW\=2:0JO<1PUG&).Y@59'():&CYD51I/U-E
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
M,XR!_)'R\<$PEI-C#JPFB.+Y9)S?7[T':84"D*U%.7V0 7$M,V<?FL'R9KT
M)YMW' 6W7K0*5ZU/62?\H.SA&4"ZW@(USC $ S; ]0KZ*\PNY'T=&:1)];.O
M!S[>"=V'M8ZTFS!)N5C-XM4__^A=B*WN(E!Q5#_J[Z'<A&PYJT[(M B'5I@$
MV8Q4#AN0C9\\UN?8;&BL>#^J1RE'5,;S@(>?<76&EXNF1W_'%;OHJC<SS)7G
MO:E9HU=^X^&%[&-!ALJ;K_KZPL__?\MXOLC)/P,6<S5_4M+BCE8*=%&0E_I+
MK7[KOA:Y^UK[ZMM0ZV.[*288A_FL3EKV3Z:WJ?]BF&.I3QU/XVPRN%@>DT.\
M_9]T'?(EQW5>H;[4OI3+>!W*)5>C^@/F T5A#F8>'B ;JUNUF&YC95N'.CY0
M@_?]M#G_\7_'F75.940X%8)*("7E4 HMJ)$P8H)"0*T-G3AQ^<4GM3RM1=RD
M&7)74=N&OJA!\UGN;U%::R;:NM[B[^MIDT:-QK%=MN-G=%^H_]!-_KKK-,\]
M/%76&S^O'5Y/'NY0!-XW6XND]5Z>."8,$*67II#7J<P90XY#1"DSB&(FG1 %
MAZU/>+G3#],O/':=I]'DM-'/:/[^^]O/;^\9[&D,N352M"W@#[=XWGV6:UNV
MBDR"-ZED^YG50[,:]?[?)[5ZMH;_,1U\N%C,JJ9D4$8U/PJBK="^7P:*1>P8
M&&8"&')H5TT&7U9TL,'KO//*_/-/YC^__/1+SBD^'07@Y=L 2)"YQ6+>.G/%
M_US.;PLPI"QT*/QA 0;A(XLP+3NX7$XF.27>MXP)?>BCQRSJ#! 4G^/X<RA6
M9 !Q-6PE'_>%X=?B=OV%0B2\NM(PAZE*_5.$_O" T%@0K1>_DG^A\-:9-Y^N
M@*KRL8+%+*"'K%.//2>C)(>")E3PJEO:<&N$P=)JHCEA2BH#H7/0 6= $\_W
M'@-I"KJ&[(\O88XFAZV^0RJ9&UW\V:Y*:>5OU;AH5ZCEE:C4)<7+26O ]#Z>
M:YZVM,E!FP>B!]Y*"2OV-0N<BX"C5G&)(PZ-@V$K);$N,A74_$:REW(_DO1O
M<Q\.=GO[H'P-#[=]025]5IQ#N)<8HL^JH[+&>4^P(\ @[[L,5-A:H'386,V5
MT139.H> NKB8!T=8[<G'PMA\#+;FOK(X\;8<@ZYLZ^MFQTBKNQKG"Y2ERS]F
M\ZQB4!"I%E!'V3#_XC8CR EGJ&%@JX =#K.^A5>[F:6+5R$PS.Q\=92P ]#$
M(1$BO:N.DJ_S;+0$B?O<=/!Y);!JL0XYW\ ^0TN_?:PQ+,3SS'F^G5Z\'O@5
M'?PVOIC//OK-W6>,<_4C6<@PN"]0R/"VYEFR[<."5_X)7Z57R>0RA!H?OGS^
MZ9=5"+"6@B<9Q,AX,8__\.$-)[]FOS_[\>IB%FI:M='".K7NS21>9$/@0; N
M@G.OA2@9>$>A5V5\4'\_F\W,X+$"V6\6M^2CFLNO_F*A-.8S]LT1Q' P3185
MGG6YLX>$.,Z,% ,5,[4#%@.?R?@ (H)&:D>U\$8*<JVQ#R:VR;0^K0:BWA;L
M"B%)R'IYT\)%C=1T]*[J,_+O^=RB!$3>"(%<'/]Y14!B*SOWV\<57THFO$%T
MO>2N9*Z](.2 Y#C#9P\L&:R27(*$]KFLT) 8@CG5.'-:4!&-B8Q VX%E)W<7
MH-?H<.ZL@(DOJJ*'WMH:F+F"A&NF@&64.6.HQ2%G@)8QA9AK0J3L$&AV<3NA
M% ?<SCR5;@:=1;QR45>&Y]COJJT90&.MQ,A*17T "GB$F-]O!*D"TBFXG2H7
MA-EK2KWJXSL6>\T.26968Q5?0=;%%U<!A:IDD"FCS^H8H0#,SU$ALB@UH';>
MB4+WG.IN.F;OB!]WRU^"^WZP:.J-AP:08^QS5L.9-MI0Z*5-4TXI8KA6-+61
M4X@H#B1WC*!(42^+_J.&T @9@QZL CYZG=VXQ0\,[9X=-17[FR&%K*@0O&6(
M)[<9Y&>)V#:>ES0@*W2RE?BOCN1JQ[BU;NV"2#L;*<\.;W/BDN5UH"/Y5W%*
M'"1NDAV,7JQ,4!ZBKM6RJB.[N-+3# SES2.UX2, 0&,O!X"V11U[KS(XWJH5
M80L]VEUSS@N( +SF!-3^[R\'1B5@XB\;X0/@3F\AN=77.MK%+9]J!O(O_/RV
MCKAQGBW<G4(?..2S=E1T=^R7#562\Q38YQL]?;FI@<Y,@3V25PI<E8@PA! X
MPA5Q$04$.^A?\4&*4-:*T =Q3B7#[0<#I&@3%*#[L__'/2:KFD22_4SLV<S$
M/FP-.:A90PZ)L@10'6%EH9'4D6 -E996*+I-)\;NUC"?H<T_^:GJU3X:FPB&
M%#_+[&SWK>51&,4/V53 BEMK5U2K<S)^1VOC4'620(R3!ID((,$-\9&>_T2P
M<09+;+'8YE"P'1N7R=^Q6#<QE%SV$=_11'RY<9NNH"EZU+X^ZENSB+2*^FA$
M*<8LBJS/?:V2(. :>XMH-1< *7I(BYC):86@DG_C6(RB#_D(;)*1]R%?5ZUB
M73A#7WX\_9;1@/7!WRD'?S5P3Q/IR&B))'/<:6HD<,Z;.@PX,1R1;=I(=C9U
M;U?R5HO_OES%T[_-9J,P#WHT9@^S(21]_>]XHL%2POKPKP__,ILH:D4_;#CC
M#FMB#:><(.$("S8146PA%PV;>&SFBK,AAFWFKGV4]DRG%3?Q[8Y'%>=DG+IK
M@S;#K^5&J%:5$XI@S@$2UG%"$8?&AAP4:Q<!BJ1XAJI<_8U" C_F G@LEHZ!
M9FMX#W5\(C%<,5698:),TYW0W/M8[CACN<?L**WF8A#$3A(38>* !,"A*,H2
M7 -\YDMM _[]L';TJ(XXR!#(-NUGCWW<*?O9.!'IF3%./\(4U? .5=I2&V%&
ML!&AX$<ESBPC1@I*>M!SW^J XUB-HQB*5L]_3\X&'G=P:9-\K'DP3[XGTV7?
M'=@'EX4)E35\!:85Q)%B0@H&I ($AY-B;T*IA$SJ!KK/88/+4F8_Y2)[+)84
MXB&%S0G>/LX\D3AS94H7\9_K?$339-$'F@^+\AI!0!/-_WBM**[.6[1/Q*4&
MTC$ O#U%6@J;65&!1"0".?CAK&@IG%_B/VMO'I'IA*C5%NLMY>UD+.AQ1ZE?
M,MRI-122/E#=5=K;8C;:M)HG1WFT#\MQ![B0'G%0K,Z+!QS3%G LL(+<2.*R
MLS@CA7)&M17FEWT$]U=,-G G=] K(4"&D(GGY$DZK-(=ICWA,(Q(3Z?N.21H
M_]MID-EICE22T5?D= R+ !R7B\4Z\&6.I'BG#_7PR%J25\BNS'L33#7@-L("
M<D*,91!&% D9(5.U1/I[V%73X_N1F>K-D"^M[-N";V'XNED&;0U]*P-;RY>G
MGCIF=##/B*$HN5R)!R<2&"R]X1?,*6Z9 3J(![=(:($/.A+:H11E:[A%?D!(
MZ(S\)= $>2,_&GPK_.<SF(L:8 +'S"+,O'V@E'A10!I3+P^,^+_"^$A7NP6W
MW4#.7C<[F]N#0_6_FE3 [('!J62*RIEM_,8N_36#,P@@OJ&&=+.<W\PR8IR*
MRVK\X"##L]N+.I@_D%H!0*DDA%L?/G($D<54:44<!0T:S;/JL-\:Y1.S@YJ1
M@+5W8)&HD0+T(M%YD0@6HVE&_!,-XL5B/OZZS,'J O9\R>4U3R;9UJ17XYM@
MF\J0-IU=+G[X;PX+ KZPMYGENHR_S^;9SV1(D2N(2'^KLY)9/6"H%Q1AF6OS
M%C&^#O1J_PI8XCY;&L0^?@Y!?0"C]'\'QI2"=ZUMHW<'L?2N?%?'8M!JY6,C
MXX4<8<T<CZP,(9(V'&I &BZQ%-AH[(4B>3?^WA33?Q3/J/)'_#U-+I>3=^/+
MY)EPBFN"^"I-+MZ,EO/ O.?%$-Y%S<QY =L-;48;SE .'^I GRA7>/(2.6F,
MBBA1R@C*(Q_J^%@'$$*UB,CY5>JWMU:'-%:9Z<E#IB1=9.H^JAN5"B$V?3U8
MKQF\-*3NESNHM'6(W$&\_);SR0;*1F_)0BA8YX?P86#VK72P3 - =V"-O,E6
M-Z#>SKWI'*1+'U;Z_[U*XLDB1^^^6EZ'FTSFW_W'BBCR9IZD^95N GMEV.^"
MT]3'HUF8Z>]@Q1817P2(].QR&?OJ[/IFDL%!QQD+5D#\33,%#E17T]&=G\EK
M''YM_373S/X7(,&+J_EL^>VJ6H#_$X@KY[.,0B/<7Z#-++@PDU#PGQ3?S *8
M>>+E+\GI?Y\O%?+V@?>Y4#O%CODX(Z[)",VR,EE=,0*O['P<T)\#VVP1A.0Z
M'X2JP&P/?Q;\9T%6+H(.5%U,7M@K'M<@N '0/IS&#+[>%A(:;B#[O:9X9M^8
MC$.K:. M?3UX.]U=N.I\>3NDC3]JSK%&]!,>/P/ ]A9Q?.U=CM=''TME)+5?
MXTD&R)Y>)>%AUE:PI%X.S'A-:+AAY7^+A1P^$/:M3R4,&X1&)8510:.<6^ZZ
M@T_2@A!YG%$ 9XS*BR"NV69F.UQ3[^?,:R& 59T4$N(C/(.I0-0889V5(<IC
M0D0H,A)M$0Q\+-F(X\G;::YW_H^WP?C&$[5BW?7ZG%G81:)66[V)AV3=E-20
M]+ME2>CK)DQ&>^EL"T0#]ZR2WZTH/%%MJQXD$O 9KG<"$BA!0,2PH#X5@- X
MP!D!2*D:D0!07%I !):*4Q49J[4-'X6ALXX[OA,30'G<".\<W!XRE*D ^Y?3
M>#D:!]WV^IF+PCKK=)7CY=H>K,]J80=7<6 L3Z;!E-W$&2>8_T".XE\+D&H.
MXBKVOWF1M57[#R\&_Q5/,X8Q6/**YX3CW\;?PS4+MN\:>5K-C*Z17^?IYHI?
MH,J*LX_YG_0AY[!^HN,?,RT(#4*ZDE^I+0ZVLP*D)^(U]79W]7]H/T!Z^=/F
M]ICB@N0!:/G= .D?^,6'OG;(B[UH?V67&F!.X/E6PLV[U$K9L%*[-GC]2";?
MO<'W+U^E S<-X:[U<6F(0@88#G]>>9G.]1'W<GX8.7^,W^$0<MY<B]WZ:MI2
MBR;9^C.*P1,>O9>1%Y41<;Z=P<4,4 ^*<&#S<#K=OJ?<S LAJ1JX-*4L A(S
M$C' B)/2<0BMIE@!AO7&<9-:)20M2R'WCMH]>]%I>Y82(,40(?8<PW;=[+SM
MC5]O_,[.^+$*5DQ!$%G!A</&&&1LQ -C:V;\J !J(QS.TXR?Z*;Q W)(T+/
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
MYUS+(ER ,L(-&+^7M@F]K^][UE^X^^9HU5[4)H&9=()K2ZV1,#O^#C!B62A
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
M1D]1Y-K*N7SAWGNI_?(CF7Q/?O.W>M7%LBYXN*R+Z! \GJ4^>:,&X^GNNXQ
M( '8\<O#@TM7K1")J($<8(<%CHC5U &2SR1BIX133V(O:TK7__AHZ,N/62]4
M+0D5[+!0H0J717-D.4#$1#HR6AD9"5X*%=.N0>"S@U!=S9.[J4 O5KN*%>JP
M6.%:2*L<!P!R3IQ@$5141H6MBA"AJG%H\G2QBF;+>2]5+4D5[K!4D6H8V,=4
M+B*:B\ABH1TA%)4'XXQST!B[V4&J_&=[J6I)JL@>4A5B^8-+5GUB@C$K%5#8
M$H:M0)"7$(%(L>@IF"OW2):Z7"3SXQ4OB XC7B%Y2^*P-D__#9G]Q.O!>LJ]
M7@;=<)9^=R\_7USY!'.2S"X?6/MHN5C.DWOV]DM([;_XR^C)[.*/GS(A"W]^
M3B9)MDZOI,-:6V<,0YAA'F%I\A"+2" XLZ\J X<,L!2IB&( +!/.05D0G3IJ
M$?8A?N*W[":4,.;+Y*<CS?KSK'V\6N%TZ/^XF"S#G0TN"OJW_ O^%]*K\8W_
M1'R7_&LX6%0PIYF]N-AJY#Z4".+4"_QD,ON1OED7H+W7LU9:NO"73.;WK'#M
M(FOU2U!^?SP=^>]F?]?O8AIT=+)^39 7-+,"T^ BF4R*=S.E#G_[I[LH_[YG
M5[^,P^J]3WX,/LVNXT9A]SJ>?QM/\]N+EXM9^4)>)\Y>^3$>+:[>,/2:U_\C
M_O+KUU#"F8>VR4E\DR9ORG_\>K?\]M.JGW%5]R4_;>YVS"\HV%]^_:E1_<O?
M@P^\A;;Z6MLH%1UMOJP7/_K^\-/I#^>B5I1D0"HJL"(!]3%R3)BB6888[<">
MJ=AV1<DV>D+)$) V\>%.IK.[N[8%WK\MIW^Z)T!5"G$!&0)+#HV6B"L-(H)*
M_7-:MU%AVU2V;4/M\)")D^C%/A^7CO94NZ,:2-Q.'U&EC\ 9:*@2&$FF.6%
M65#J(W+T20#(3ZYXMX&I)(=2M D%USO"@VLD/EM'2%"-)@LB;6'DD!1,.Q4)
M:$K%4UR30YX)M-'&"8<"B]X3'I,G)+TGO*N0K.8)E?-1J;,1H0#1B&,<B5(A
ML31/HIY]ZG%*.PJ)(.X=X=$XPB^->O]+-5^_7&GI:.Q$K8+D(B>4Q@%1S'!N
M&<+4K3)81/8\=MWB<*R-AE(:SDA/@E^@_9;2_+?7V^/O:31]EL.1-AXE^Z_\
MY;NG.LU;>.04K84[C%XUJNS9?U_-JV.@;\FKK]XX_O$JLX]OXLF/^#8-IQ%7
M\^)YXDQ%4TVTSUTE"5#"U&NBBCA73CFB 0?6N/"=>&TA'GJZY]J11_=EHT"M
M3L8>E3!VS_'9G=O?ZC>V>,9UUTE$=J6?Z2_E0^]T#JTN+GSLL4@_QK=!M]5T
MY%^9+Y/1NW'\=3P9+\9):L?IQ626+N</'SDKS02+C(V<1HPCIF!9XY! :$)K
M1\[42.P_[2(,"-5 H4B5QP,"*T=SB^R-0#)2BR=?!S9.K)\L3<J83[\[.WCW
M5NFW[]Y^>>L^UWOAUTS6_DT 'RZ;B_[X$3\0W%K)L.962*$<8(Z4ZQ )"NM'
M_-HYB@4B#@!G@1 *R7*]I=118\'NF.%==AMVI%.@6-K!I%K;L#_I.%T,9I>A
M'Z0XE@^- /%B8).+K(DE'Q7"L#^L;^>P'@*PW_&\>/1XGC]T!K_W\7Q+;[7<
M"W 42=A68W?XL;I(+CNE<MW\.4AGD_%H\&\@^\^A5Z*AK#M7B* \\P'+\]EI
M<;Z5T-+O_O!I1CH<?)U-EVG9,S>[OAZG:>BS>^E&H$+4,D_9D+,.EG+VZ1+:
M[5F?J0 D $@8K9JCG?2I)<(.&*<%0,!J7$2W0!'+Q=U8VEW?3&:W2?(I;_FL
M1=)F.9][C3[DV2A$SP+UWHJP]HBV78;NZ W541@J7A6J.>?>*BGD &160RBB
M2)6&*D*H<<*\BZ$2[1@J,(2MXG4=F:$ZK9SJ0S;0$#>K&_L>/Q\@^.Z$SLKJ
M$%HSP!5FD0 1)5H3#"U:!1<,-Z;:L[5NUN@.'5D@YA6VS>Z/Q_:VLS'$"80*
M9Z^ '%;X\0X!Y5AD(H.8A0(RHFBI@%3+QNCCDQ6P'8_I%1"+5CUF5Q7P3(H2
MN_.EK&T<]ALWFBU#17T?K3R=8/^QU3GI;(#C"D8?&*$E8< @+@BW0(8AJ!R-
MB?C_W /<_=Q!!:=#A%OEQ]UY\[N9)G3* G:IGM';P-X&;K2!M,X_CK5AC')B
M( 2.*U@.G[' ,=(8=GG^N(ZQ(3E@7'?\-O" [7YW<"3O=-,<5[M?T1['G-
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
MP:*@RQT5C3ZF(DHHMKI1;-ZF)V-G]D0T%+!-H+K.(LJ=@.7OU;T[ZHZK\QM
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
M6 ,%0$:2B!%>:JGEUFX7%H=E]@JY0DXQ]64^F!]%>"A(F_VKG7679^453W0
MQL>M%="] 49Q8PQ%1 L9.40P+=4.,0L.HW8M>4'>,L'WV0S#B(YZR2^S13RI
M.E0:1V9=BG,[T/KWF)ZC&MFJPY8!I92ASO\3"PA=F;U&%#Z>O?YM[G7\8!Z4
MXB%FSP*]T/<V'Z]#/C/U)17_*O<J:J%BD%$-L/?73*^B8V2CQISJUNK;CB<F
M;$A$FP=#1Z:^)Y:L_G<\6<9YQ7CB[4 \O=APRGP&L?0C[?4(L$I+E9)&6F6]
M<@:.9*R<7@737FT;N X-+5TMO"K7_7"UWZ%$K3K<+7>XZ["@_S][W][<-H[E
M^U58N3M;/56R!^]'>F]7 02PFUO=239)3]?\U47+=*P=6?*04A+OI[\ *8JR
M9%NR1-F4Q-V,V]:#)'#.^9T'SJ/S@$]":D4MM0(K!#"APK]% ./,Z]/*-%9R
MM0?$=E+;D,O; ^0E/=Y#D=K.02X=Y*(96JC=^/;B*OS$K'.X$$0C, 8$.&$E
M $(S&2,@YPCBW$J_[Q4$>9\NU]0UZ%K#'B$OV3+FP&SWSO7NA/_9PH]J\T$C
M HP$4D.GA%#2 3ROJ94>);84_H8<<]HC>']5M <O_*]:7[8L[%4%93 ^VE)+
M<&3K/J6UGB2-3[BJ;*& N^6E95WUV"N:>B=*^R,+T;\;39+1UV*D3R-'XX<;
MRD-XH:4'P0X0)"WET%D+%*Z.R3@0TJ[TMUFPQ1>ZC/SG>'SY?3 <JM%EO<VE
MK;XW+UV0'FBTQ_*A1.[:8)2UQ<L^8"&DM1"*V!DK >..QAI *Z%0<R$D!.U#
M")OQECGH^06=H!">2C74QVQ\Z]=U5V1BI_^:#FY#N^XVI:6T1)QY/:S "<UP
MS*T CA#I(!<25?&MV+^UF3A7._]QF(PF7J9MM?E[TZBRA]B+#-HZ%"'OO)\3
M%699"[-PU'C!I=!:P2Q1$#)9"3,@;D/=_!QA;JKNF+S,U+Q#$>8C<V<_9NEM
M,KAL:BKMX0HKAO7 KIAS"I'_GY#.,2H<5W-#6A'$-Q768FNKA@%[T[>D)]$I
MVLZ= WL4<H=KN9,@CF,##,(Q48Y8S8R;RQUB&T:1ULM=0T>\/<!/,7!T*C[K
M_*@G2[^EH^E!I7&U1+;IPD1WX:S4)&:QPTP[KJ&E<]F&XJEF /?Z4,\[ I0M
MTO>8ILUXHX7^NY*_[;#0>;D="#P( KP& :B<,C$CC BE8JF(D7/#.J:;>L&;
M@$ S*A[W9#LR. \%!+;TC@\OZWLAYZ.%M1XM2.1<"PNRGHYBD:0@'%<!ZE\G
M84:OJ6"!*?)H^=9\2LH"..POK"U[0C3I9^^E!*1MTT\Z)_WD)9W 6M*]^6\P
MD(1SS*V&6D")*TG'6M$=);VAF#?O(?22MO]12/J))("^3R?;&03/X)!NDMPS
M=^>X)\DA0NINJ+&F3AJ(+%4< VT9-',$I9R[S5RH_1U&B!XA^[.23FYZ7*O
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
MIUG_.LG+9C^+M2DO!%\O(YR/MV>=22=9F E$H948*XTH"#/"I %S\T++U9$
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
M5YAUX<0DGSM7"XS[)<CWDZD[B@I*.18,"R4 \*9$U8U($@, 6$C=(1IJRQB
MS"+L,')<H"HBX0 %*[DW;6"8+P76#8?C[X'RE>D?5:9_4N]5&<0K=&(@\ORL
MN'1/WC8L"T^:I*A<[,)-5M+4EC/0%I]B%$!E>/^>LRRU(EDWZJ?#X>S=__O&
MTRW\[5?7K_Y^8(._>"<LC]ZGWZ-/8^\5+V^T]X"^#D;EXR73R;AZH<Q<*U[Y
M/KB<7/M/^QV:C53K>[HDMWGZMOKEY^7DY3?S)A+S''CYYO$6$^4M&/W+S]6'
MEM^#X(GWMGOKM:YX7"TV-JI_$.O:WI1\50G>RK2^1NLC5L1VRY7_H[#D;)'Y
M51U/1!CV#J>K2H57SP!GU&"OHST0?74OMIL"V12/+!Y2=;5/I\P&HF.#C@T
MY"<\5^%>(.BGP2P6LDU[DR,=7_]PUA07=2*H<H(:JBPDS@GF-$1HEB+(!3=J
MM0?MMBF"3T53OJ39S1,Y5,WG#++SE:3!/?3<:^>\Z%9A0IMZ')P4!HC%-&&,
M8HXT< X[**6TA+L* Q#%#R>8O!0&B X#.@SH,& O& #K3$)@N(&.&\LL(18:
M%L/:#N#FX4S"E\( WF% UYAW0U^@/K@_C39'I23CN@XB!LH9X34WQ\#8F")N
M*DF.H42K)TM-GH_^,3M64>6I2IW=\>1!Z?:2_<0!*W[L>'4E!94]T(CAN#I^
M_N4T8T7'*>NDUMH*4ZP( !)1K36*C5!SK2T4;B[_OPE9W]62;TC6>2?KG:P?
MBJRS6J]K0*AATLLU02*6%$F!Y[+N<',EVTW(^JX6>R.R+AZH'#I^63^1X/^G
MAU-97]OG;P5J\+K?FA42(PT 4])*08E7PZQ"#2CCU6G*3:)&H%%(2:XRDEOL
M!,!S\1)C> X%1%J%'6VR)(X/+&1]$$ 4TXPX[*0TT%A&,((56-@X7FW.^ I@
MT0HOHE$GH@.+#BP.!"PDJ"T+9[6SCBO(*,'"$"LYGY\80 O: !:M<$/J,X8.
M+([VV*$N(=G6#3E83$!X80 1=[%BEF(%,(8.<SH_>V  H6TF+#RK+JLN!FJ3
MK['/GN^'(O=="/) Q1O7R8*:*%@,UL7&6L(0,A!5*I]Z ^#UQ?M5O(-.O#OQ
M/ECQIK7V%L8H 87_G^5.QHZ1.A<88$9?7[Q?Q9[OQ/N7TQGPLFG;^H+U(N7I
M_VTEU6CG80QKA2M_3+J>'LZ M,1,"R.MT)8:"IF;5WA3318JO $GP$I"E8:0
M$R6HI*RJ\%8D=LU7>.\A\^U^Q7=9\.PQ)_1H^M\TWZ+EUXS:5;/0A8[JV[>_
MV*GK9/33K,-=T<MA/,W]T^=_[2K4FZE0I_P<8%[_([O5JXOU]>I;5I"+Q@O/
MGWB+'W)-^EX*E(_=\.U*+A>^4#9)+?IL%M![XBR!.Y;XI4J.BF;945'1$SDR
MH=O00FM6;U64/'/T4?'?1]^*\9JAY=[_2T9AWF%4-M@^T:+UQM?7GM*B1^(*
M$- Z=9%0@"G#1G'&_;N *TMFHQD !_;A(N-M@@L/#U_^4@]??C^>L>;[60!@
MI;,U_V_R2'S!;]!# QF\R?VQ]A?F+V\R*?)5AL2VLQJI X&7 H%F(/[?=ECC
M8>,:KZ,DG #,#.2 PUA8IA1 IL(U$P/Z"KCV;N3Q:90/^H7-\9+X-LW#YXKG
M7P0Y-,<X<.H8=R*9V?]9]DE\[7RI0T+_HTL4@T N3OH%TAM^VEJE"$%.(5U-
MY@+04?=R,%FP9O[N\2EU3YX?OZ !N#P#!S=9H?HHM[76^CMF8-@\NG9T( $!
MJ5/'(,><0F!C*20RR$$X!PFA7@\DGC2H]@T9S[6I5H8KP7.T.E[IF)#CN )G
M?R]L^,X]/IKT&@]BLDZ?XQ@AI0DB1!DC"9"QJR .(?2"[N+?9[YBZ^V@?3J)
MK;5VCD"8-S9J#E>P29TXIX7#DEE)@7#:VRK^!ZP$6POP\)SM%Q#L@[)=CE+4
M3R3D,TO<[((^6P0I'ST:/T!_[Z=UH,GJ8@++_.L>.!4T1G'K0@.C"C1C@IN;
MU[X6-.?<>P &T;*'UWS0?'M^;%,2\ZLW 6\9$IURE$G4EAJ5R  F_'O8&VG&
M8A&SV@53S351VA1TPLRQ@S+35D),\IS3+L1T,"&FQ=RLQ2%#77;6D3FH"-2V
M%K<>[XSRWJFS"H6FL+2"/4(%U&U*P!)M2,!:.7\CQ^"-GH L'W_@":&Z89,
M6%BJM6$  D$0H6">@"0):Z[7<X,)2'N3[R8.RYJT9-IOL!QVT*G+,^KRC" B
M=4<J+("BQ '$K46 @!A2#+4PRF"IL'U!*V=MGM&3;6A>,9Q$NSRC8P6&$XX
MH84VV@93B2".@9.0&41C;S05(.&<]Y+H"T: GIEGM$_(V-5T(O <=GE&AQ,$
MZO*,#LXK7'>TAD0]%D0HQSB+-=% :60QQT($C-,(:V=P<TV_=T\T:JDAQ(]]
M(M VYV-'(/S''Q[" "XZ1 0A(Y5U(C9"<A7K @>H$=2]Y!'[,_.2VFSK(&_K
M=&&BPPD3=;E)K[WP=AA(&-4&DN0,&PRD!, ACB%DL(@4:>X,B6ESO<L;R3UJ
MJ8T$FSP3ZY*+#AA*3CBTA$EM;LD8*B"=<"#F&G((O!=6H(JV'G!<<],8&TTN
M:K6MU247'51<Z:GD(GF:'N<S4F[Q[8_H<CP-72]W:8_6_AXJF-6F&")2 &F
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
MK:RNKH$R!IA+1BSWYK?!F$A>6=U R<8C"@O$V']$ ?4 :]*T;JV1W!D +WZ
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
MBRT&H-;2U'%BI#>RG1<N)27E;FYW(ZY6HG,;E89]27[HD@8N&]^\L%V.9$_
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
M:T?K;4I:UF*)Y3L@]HMZ 0_X'>O]+1I:TGOIED1IABF&TFCOMB%(/; SXL[
M_AVF+[/HEC=]@]H-[L62IO/.0CKR_RUU7?!JAL/Q]SSZJ8B-C:>YEZ'\KV\;
M#E,MG#/V_9.EV0.+7;C)O4-[4'U_UA\L_+WX%*,@#,/[]P1ETD)QVAAY7VHX
M>[>(LX:__>KZU=\/;/"7P8VW;=ZGWZ-/XYMD)<7A)LF^#D;EXR73R;AZH<R8
M*%[Y/KB<7+]E\AQ1N?#O+]7Q;-_O>W*;IV^K7WY>/HM],\^:G5?"\C>/Y]26
M-T3L+S]7'UI^#S[^%D5;?>VIM\1&7]N\<G0/K1Y?/'>XT !14 &/=)SK<GD.
MG<2N<(\&R3#Z//$N1'!_HGB8Y/G@RJ]XLJB%3XKRF_?&?UTN6%%/:_B@T!1_
M>DWQY[*FF/'#."O.G((S'J5>@SU4.=#.1J&MPH9NX=W"CV;AC8'AGC=INY9A
MSX70QU3I8HSG:#N&/12)/$T+X?!I^=D[EOZ&O>AK.O)4'1;QJ.3R9C :Y)-
MY6]S_[NS_QOOX[1]4\,7S-3?VY)>)@^_B(%R4J?A:TZPP% +*%%LL0D1[EA#
M)SE7+(Y73H+O'WAM>WRQ:?=-UL/[Z'!SJ"TT#WOLV.?K<38Y\Y;%S6ZJ\I@-
MR_8L_-"4ZS%SQ>9]J)O<A%:H*EZK*B-,C R QL9.6VLUL*I052+4Y:.5VM8"
M;T(NQHNH*M1#K%%5=2Q]0%H*1W]/LD%QNM2Y;8=.RLYM:TZ!'-] MD*/"+ P
MCPUCH:R!6"&#(9>6(U'J$2L(1BL#2RJD>!$U GN([Z]#7N?TO#0VO4\GG;?3
M?F^G6W@;%OZB'2 /+?*XU_:0K8]9"E(K<.BLT<!@IC3B'#DGJ"X4N.16*[FB
MP%]$<<N>1"_;)N0 YP2]5/N0=:\47RTOMIP?N7H.NO^L3W>&V-*RBI_769U0
M^34]N\C2Y)]GR95_J+?)\'MREX<LO.MLMIZG'G*3_,U&R%&7'R]L;P,5ET^W
M6UG[==Q,Q>733['VZ_BYY;N>&&\_]Z_3R^DP#36[H6)'Y7DZR=7H\E?OE<QJ
M&[\40Z&?+&B6EG##M::$4 4IAQXH_1\BU()S9Q9*>*TDQ&.I<I)+ZIPC7!'_
M48:8T\K&8*4B^>B*2%6KJIUZT:</OU<E607QBP!'^<*P9H*B:&ZALK5*29C5
M165I/RB&A28*HT(U%&5?%\FP* K+KU/OL#295G[R*>14GC,DZW]XMQ1RNC:%
MG-.F<\'19MGEKQH@;I,C<P3K.]9TWT>[@C^)V:<6MRHN=QD41F$JO?6+2+,
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
MT/C !02=8/IN\(!!AF&71S*'!^QQ50RHK;:4)YM&E UR.18:$>J!<QK;N#6
M-TLY]>C@I8$OC@YN>??5"ZN#IAW2?L+(U_:C)0($^88(G,"$$,>)E3Q U'K.
M;9TFX!1OM3HY$2+H+5& ,\)3E4!B@H$P 68;)A#.(<>(B()33KO8*P+7AQX]
M(.[03+!#=/\(%Z05/>%X1#BF#8Z!HQ03 ) FF ED)&45CHD)1MN_X,EK0'&T
MR^J)% ?\ZW1Y7M3Q;WI_ID3;74SS!M/(<",XIHP*H9W%3GE9A>L4>\4.O3;O
MY*77-A!,X&.T@"$5"4"6A>$>=9IO4 0S5(]@A+0B::.-IK5A&%J'A#( <RY5
MK>,HF, '+PP^#*WT%OMW6;V8^"3QR2#X!,-&-\GS6,P(O,=8!J1[:J#8Z,+R
MP^M8[YA"N)]1.F $EH7 +9%"(H71D0)ND0)2UC%NJ&'!TQ#& \$KE0&@C>R_
MOOGU<8UP!F"2%3B>(H'W,9(\6UR%C_W8%\P]M&P;!J9I@VFK$5&(Q-4=$*:-
M@IN%7A!CQ*$7^F(^5^4*[RYG5[/Y840.5V&2PN\>3S70C,A.O8 G+'"PSL!)
MK?FCI0G>2!P*2YV#4C CK=#0P+C>5_$ 5N[@$H==T41G&8->*X@3+21:Z(\6
M_OP4+\A&L$@@;@" QE'!D-0 .0/K?E?0JH,?)'B4%XYZ[=_&Q3X&U(WS_9?$
M":/CA,WR-9YEZD1VYHM>W9/EHQVK.X?F@T-VR$:BNW0M>7+N'QN$G9[U-7U[
M@IL3! 8QKXB7"C,,N3>$$E.5)#C,X,'7\(?V#H=17I"%.<T$>94*@TXPE'8&
MAMR_*?'G<? G;0Y>,!4X$RJM'?"!.8$7VF_T&3 ;;$G7X>LH),D$>I7=E<2<
M]S#G86'VBCFD1*H'G^UG998(;RK:'+#&  *P(<QJC3"AJ#[$ AP\&*M&/MQ4
MGP0^;&657E@%_YRTDLP0>97N-CNEDPX)GUUR38E/$Y^.B4^?HM-6@;!@Q!,!
M-2 .4Z8H9J;:YV<$ F;[I--NPFS!,H+XZ3J+XZK3L?GU,DQNL6X61X>F5XOP
M,/\L?Y'_<1T[W)[J(4 *&U%1;($6TC I-<0,AS^KRG[L($+;17?M@0U_O\RK
MKCNJ-;[C3<<QDB$QBN.#:=]L#$!&LJ7WS9AC0'OED:.080),'=!H8[=*ZH\
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
M80(F-DP@*?!>6RB!,U0XSC4AF^B>X*U^.T<0W3_"!6E%3S@>$8Y%@V-C <"
M8F@X"Y@&P#<XEN05Y)E> XJC759/I#C@7Z?+\Z*./PI7+M;A32G1=@?3!#28
MQEQQA81TL96Y]M1RCNN3?!*JXQ,DB'10VT P@8_1 H94) !%QDF70I'#2_,-
MBF"&ZA&,D%80;XX):$^L-,2'2)^:P"E,H9I6&(,'%T<[#*WT%?MCE/@D\<GH
M^(0TNDF<.V<%-1@)1Y3$%-9NBH.88WIH/MDQA7 _HW3 ""038MQ[B8D43I,4
M6$,*&CK-**(AA&': @P5Y]56(])<]D\*KX]KA#-&Q]WK>UQ% N]C)'FVN H?
M^[$OF'MHVS8,3(L&TXHKI:AE0$,@,-<"8E*7#T"N#KYK6,SGJESAW>7L:C8_
MC,CA*DQ2^-WCJ0:<0=IIJN$)"QRL,W!2:_Y8:8*"1N&084FAI-XH:%3D",WJ
MHTV*.7'P@N&N:**SC$&O%<2)%A(M]$<+?WZ*%U C6*0TH<1SX1 6BCLI )*U
M((%]C2W*?7CAJ-?^;5SL8T#=.-]_29PP.D[8+%_C6:9.9&>^Z-<]63[:M;IS
M:#XX9(=L)KI+VY(GY_ZQ0=CI65_5M^?-"0*H(6$<2>.PPY:&]X!-%[BPAK-#
MK^$/[1T.HKQ 4)PA\"H=#CI!4-H7&'+[IL2>Q\&>HCEVH0B'5 @-*-3"H_ #
MW;2E8WZX HV'KZ*0(,.TRU+/Q)S]=W?O"F:OF$%*I'KPV7Y67HF!5CT;QU(3
MKQ2BGF$(#,&VKC\Q]'"G6B,?;FI/ A^V<DHOK(%_3E))9(B_BKS53LFD0\)G
METQ3XM/$IV/BTZ?HM%4>[+CG5BHDG;/82.,5*,OY""/>FE[IM),&I31#XE6*
M;H?I*HZK1L?FU\LPM<6J61P;FEXMPL/\L_Q%_L=U[&Y[J@< &6D$1:WC-/S#
M#-<FGNP/&+!-;+E=<-<>V/#WR[SJN*-:XSO>5!P%&<1=9N(&&QF.('5V D!F
M;0E/+C7GF!(@J/+,&,-J($.-MOKZ' &0>\L*P2XCG@3A!.$]("Q:.EN0&ZH=
MP@88X;C BL%-H2Q#6Q5PO4/XP2,P71R:!1F'75:S)!PF'.Z.0PX:'")#'*9<
M6L^1TR%^9:S2N\, 4ZH[Q6$'4&(PXS1UNSB>LIF*2R>+VD6:S.9GBZO4^F(+
ME:AQ<#TV!D,DO0?826REQQOQ.2WDUC&2C?_YOAC;7Q:KU7@#4X1Y!COE@.&=
M(AL4)PQU 1XA!Q#0#G*%Q$@1(:F)$C=2FFK/SE'$MU;FX7% ;UJ1. ,R]:E)
M^#\^_#^U:1]\VT:OSB$.C<5,&@X5=$#PNE>MDP)O[3)U30![1\3/V9-G(J/\
M5;:BQG+"(T'_.*'_%/+;R3$L _A-",FEE5QK((2LVD<0P^!6BZJND!\7[:UE
M/RS>O>;&),S8R,5>QK7?;*;7LW@4IMA9/I^M;Y:GVSI"M%)I!"(-I$!> R<<
M1L195*6T&0!V(QH7;N&G"D6?\NN8-HO +2$2+E$-KVN-[GAC>8@SR?$8TGDI
M,SX&.,.6^RV,U# LQ1P3!K5$L<%;=18[0)T?+9S["LMYIR5E"<@)R'L &3<:
MT=Y3"+A6,8[&"@J@PP]U_P;&Y8& W/.&,^9=MEU-:$QHW .-M-6%06B/ ,<2
M2B(L-T@Y56]MX;#B]H#&+E+.-(.=RA0//Q8=Q[;S=+7*UP=7:QC9:8UAD(K
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
MHD9(C,MJ'$(!#S^/B(0^ADGKE'\@S3#H4A4I\4_BGQ/@'P$:_H'$6 8DH (
M;K%%;J.A9"#20W*"NF , #(T#LKH.&LZW(CRYNOJ;#F[+BI-4_KD9&2@GJ"P
MUB$[R)@Q!%(&*#5,Z:*/?>E"&>?,@2FL;;^Q!<=L>79S650B#2JT^V<>'F*Z
MNH@&)\((__P:0E.#];<2:8R2-%K'R;!GVEIIB%<TQ%F<1*^G3/X X($<-VET
M'HHAR3),NY3=3Z212&,0I-$Z.@4IU\0RJ+CPQF+&-V7_U!"'MC38AD4:">;=
M!E9'$C_5.W)U"=9III]&T#KD"9YJ2>,'O\8P0"B0W"LLK1<$U$EE# _MW'S)
MSR[F >O??U2OGDP@-%C7)0%\^ "7@&T [L(_S'!H7( YELAYMHE>.-,'=D1Z
M GCW00O$&6!="LTF@"> [PYP1)L5' & J!(@[L<XPRQSJA)I<!BI8:[@"9*G
MN$'S:SQOG,^G\[-=SG&DI,D8DR:2-DD3@PW1RFGD$(3&($N;"A?O#EUFU[+>
MDPE#AI=S22QQDBS!&P$%:X&C!G E*;+**NT0J5.K@3*V6A4?.4MT'LL0##(,
M.Y5@32R16&((+"%DLP&C-1:.44B9YE82"[BKM>N$Q@?.>VRQ1,+U*>ZXJ.OK
MY72VFEZF+9=Q)VP@@.V,#0)&<8(<\ (;Z:%R&P<&(7T8:@H/_%\;>ZP[PI],
MH#-83R6A^QC0C9NS@A(B@BW6DFNG \R5%JA&-_#N0(Y'C^CN?K,E-O63"=P)
MW,, -VT*R(&C%!, D":8"60D995X(S'AS7APX$YP/,%]EG^=+L^+0JZHJ+"(
M'>52BF3'%,D3>EJC2Z% P%LY%,@A909*S"V)'=,-%[4KPY@\<*:U>G%0(<HV
M=0+8:0WLKO8X6!<HT<QITHP4S0$;R(%"TGM'J'+8"Z1]7:)FA#QPJK93FMD_
M5NIUMS>QRRC9973L$1R3#7M0RQR '$-#O>742D&:;*J@6]W>#L@>@_0H!H?I
M<8F@/R1E>P*IH1>L-5TUH1M;K[G>GOE5V9HTOA[D&FI@K+>&0F0XTWA3O*,E
M5+VR]2!CQ!!Q9[+'(/&^[G.#;#*7&#$QXJDP(FO\5V\X!8Y[ (5S!$%O[6:_
M4 !(ALR(G6_]22XR"KM4W4IDF,@PD>&@R;!U'%TPXHD('B)QF#)%,3/U:54"
M 7MI$\\7D6$7OEP&!,L(XHG [FD9G/KWI?Y]QWJQU+_OX?Y]XC3]EU-KRI7Z
M]R7+2/W[DD'LL>F1^O<-Z\D'"X,1#\+)/GB:_33[ISS[(SN[FOKWO<;S#3 K
M?2Q%8KBUR688,@IK0I'FC@(+#:YD3@F@@/94=B#&T\"/TPR*+K4%TLY:8J&3
M8"'1:+$2ZB7DAD,JJ#:42"-ES4(.D)X*W0_"0MUW\!,9HC@14"*@1$ O(B#2
M$H.V@EM&H26:*V>M4:Q2'L$. F][4A[9B8"Z*";"&2%)(/:(#BZG#G[IN,]]
M%(9:/I33QE'.L!5".DP-,;#TH;#A7O5T)OFY%)9:^ WP0%%BC=-D#=)(K@'+
M.?2$>T D09@Z*DP5>1& 5$_*TD-AC>X5FA#(*.FTRC&Q1F*-0; &:Z3<N*8(
M,J>TH(9RJ[@RN@J7*)#&#)LU$LY[/&X\W! J-?$[#5DZ(AM)?.%#).25%$(S
MS W!%+(ZL<R9.W!>)W7Q&YSSDA!^! @//D:CD60$@1P;!2TR""BJB:W3'@@(
M-TJ$=[^))&&&V"BT+!/"QX!PU"AC*.4I$(QBSI%1B(28HSKZB(S7JJ=SX'LB
M/&'R%+=I4A^_E#C9YC+:)$Z0@L(P@R!4ED$>?C"H]E84Z*OYSG.Y+#7R&T+>
M)='$:=($;]3TB3(86*4AUEHQB11PFUT9[_L2 SL8370>SF!!,HJZK'!)-)%H
M8A@T(5&S#<,\HMY9%*C":&@P=%7)!P>4]*7PNC--)&"?XKY+:N5W*DD;!IND
M#4?$:Z A@ A!X:Q&O-YX(= X=AAJ6J=6?D-T51*ZCP'=N#DU2#!PTG@1 !X
M+;AF=:=Q$L(6UU.WKP.BN_M",9@)PA*X$[B' 6[:%)(;"P &%$/#F:0  $](
MW2!<$MB3U.0>X$YP/,&MEM3*K[,<R<GUV&*BR:'(**AKG.1$0.B4 );:VI4!
MG!\XU7H<K?P8[5( (37;2C0S"IKA #9.%004*H81I=YSY10!FQT=HY$8$<VD
M5GZ)7=)&S_[L@9HR=BFTP)X(!;SW1E/'O:N=% GID-ACD![%X# ]+CWTU,HO
M]6K9?Q".NE<+IXVOAT51SP<L@$X"(P4#&S4KR76_9ZH'&2-*T7%Z[4A[OR1"
M3(1X*H3(&_<U^*N&0^00(XH((5%+FH81V*_[>O!H]@X7"LPR@A,9)C),9'@R
M9-@ZDAYB=VZE0M(YBXTT7@%<=_+SUO1*AIUH!](,B=25^;X^?IU\=SFN'V["
MW,[.RI_C;,[F-]-RH(NWE1\\O],W<+MCS>WAV>HKV,'X^+<8WGF$XL^+9?TU
MU]/O^=NORWSZ/V^GW\)-_32]_'WZ8Q4N]M>+9?4\C]WD<WH==C+T]9W<&MX[
MXU] ^TNXH\_Y95Z8_EN+*-/26(LTYP'+#*$JMR_#?\J\124@PU?$ .ONQ[7R
M'&FME>(TQ(I":L\V'[><OP5OGG,7!#LNO70*&J-H^#Y1YP@E,<K!M_#1N_!*
M&"8Y#&RAJ+#((X$W'Z<,%7?QV"RUB?JD6U1*_HX WOR;^E4.Z6*I7^7#_2KY
M:7KII]:$+O6K3):1^E4F@]AC9R_UJQS6DP\6!B,>A)-]\#3[:?9/>?9'=D [
M]:M\C><;X-[+L51"2MX<U["$"XD9A1 ; 33&5GBH+:=$4> ]Z&?WA(^G7R63
M&61="I>G_>/$0B?!0K*I\%/&<D.8TH&-M .8"F\+%I(<"$IZDB0]" MU+S7,
M,\!I(J!$0(F 7D) @0 : G),0,Z<X58"I "#0/CJC+[3P1$:$ %U43+',D2Z
M+#D9_KF/(S^=G_I5IC-M]U$8;BA,(TXU\$AY+R!#F"L(H@_%0"R;0#TIA#V7
MPE*_R@&>FDNL<9JL09OJ6<A#R,5UB" 0Q I9A9$I6(-":S3IZ6S54%BCAV ,
M9<&13*R16&-TK,&:)E&46F(E]1XKZIC6#%E3]:N$BLB>VL!UQ1H)YSV>J1]N
M")7Z59Z$]B("LFG'+:&AS O/L)5$<J P+K:WF,:. ]&3L.ISB2KUJQR<\Y(0
M?@0(A[#I (6#_X&\DPII&_X$DC@5$<X!C +J/;7./C#"NX];!,@( PGA">'#
M0#ANFC>%7V(# 3-00@T=,E2"2O[%>.]ZZDB[)\(3)D]QFR;UJTR)DVTNHTWB
M1(<() 0>$@G)A 0<B>"F1&^%20A17^K(S^6RU*]R"'F71!.G21.\Z?8$"?(
M&A&6?T$QLYQ04="$\E!:BT9&$]WWJZ0RP[#+5M^))A)-#(,F9-,V"B$)@^O@
ML77(6X"Y,%6O!60(-4/S)A*P3W'?)?6K/)6D#4)-T@9@!HW2'B"L%?"6 J.C
M!R. %M"Q U'3.O6K'**KDM!]#.@FS:G!@&T-N1."T.!_."*]*\[K".*ET4R.
M#MW=]ZND6:#&!.X$[F& F\%6\L%ZQ+&U,?- %3>65_LM%##I>Q)4W0/<"8XG
MN-62^E5VEB,YM49R"(DFAP(U11R$.$5#CRUEDDA4N#**>LH.Y<H<4;]*R#/&
M.\W(I(YRB6;&0#,8-$W K;)0,N4%P 8I3KB2Q>D\X90W!HR)9E*_RL0N::-G
M?_9 31F[M<8SS$*81HVS6!$?:^$LEU@ S?B!BUR[[E?9O4<Q.$R/2P\]]:M,
M'8GV'X1C[DB$,&6MO2_,&<'<>1B+_[RNV9H*BA2UO;+U(&-$P5*_RD2(B1!/
MB1!YX[YR*IQ'S$I#D=4:>TI)08C2>X(M'S(A=K[SQRG) .URKR&182+#1(:#
M)L/6D71@E976*^:\$IQ++TS5S9P*S&VO1]*[<.4(R(3L+]]_-/358[_*K?Z4
M]9<^WB20!2SL_<#EC_'M/\U"5#\[^SFV;3F[62[#=2:5,4YNW_.S[Q!U<8=O
M_O;E(I]<3?][$5[\,5E\FRQNEI-E=6>S53#^J^OE;!6[*WT+OZ_OO7K':O(M
M0"E\?E.=7'9G:BLLOIO\QVRYOIE>7OZ8A#_J:RSF;Z^7^=4L:OJO:CF1L\M9
M/E^O"LA%,$Q^#^B<W*PBB.ZYRO7U8KG.)K]?S,XN)M?+Q6^S\_!MX>W%QZ:3
M5;#=V;> DODZ7.-F&3YXWU.\F_QG/OF>S_-E<9/5%SUTO>)>[CY!?>,W\X"N
M\.Y@<)?9)+QQ%F8C4,OD;!K>EDVN;B[7L[=%K[OZ&<, Q3G8//(Z7UZ5#]P>
MQLET&?RH[_E5<9GBK^78U];SXHE?S/.=/SM9+W:_\"V6KWK)WB5Y IOR5\ZI
M\D@H"CE"@ GH7-6A/;S-JHV>;+B%IPB^_MV7,,;W$+MLDK2?X@@7?FS\Z=?I
M'[.KFZO:;VU1^MM5?O;3^<TR3NF;OT&PW2/W%I6_?*3C%Z\F7V_6DPB0]8_K
M2/K!2FM["<C\5MC9;#V;7DZNP]<LSE?1SG>^YOIBF0_9-E!+[%Q@JK3T'$.G
M&1$$(5K:!A9"8_H"V_A2#FU_)O)[6'I7^?S-W[[-?BO[7:ZZMI9WDP^!E>ZA
MZ6@[@9G"A<]+VBB8.%;Z;,C^;+K.OX=E(%^]N[TB/=W>M_O^O!TL;)_N&87
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
MA&2Z8#;/!-9$]\YL210V45JBM$1I>U):JQY"<L$=99!@C:&%D#)&(J51C*R
M?:DZ[>JL=1%'8I@1.>[F(N/:>TVBL/<DQ4>K4T5)0TX6"HZL!@A8HJA5W#!8
MD!/%RC&/#T5.0Q>%I2AC,HG")D@/!-*LT7D&RBMGN8:&&B(ULMBQ M(*&((L
M.69(]R8*BS((DBAL@O- X"P:C6?@M&,VA@Q24B>Y\[+(B%#GA*>PIP9@/6=$
M^A6%93!!.4%Y&%!FH"W7CI3!#'.KB'8><>V+;1N&J!9AD :W,G<A"@MB^X0N
M3W8-/^8_[BJA) J;%(YVX#G$-CPGO*1(4..(5]Q(Q+ 0=<]23F%/HK#/=UF.
M2A069 0-0H)ML'Y08IS39!S2E/O90 !4:B")T\8C[W%PM4K&00JR_M.8210V
M,4QBF&-CF*=D.EA+5TU""A563C- # S$XFG=KIA)@N2@*6:<'LDVDO:QK"0*
MF^@EB<*>>BE$$H5-FCS]/=)KQD<<-O&1 ,8"%3OW<"J)%]AQ4#LO2@M_:.=E
MT**PG-$,XB[[F@U3$2@Q6V*VXV VW(1E"!$.H(H;:8H'>N-2U@W(F#?FX&'9
M<$5A!<PHEXG5$JLE5AM$MHG3AM:\(,)1+"&W@!L!!>5UM@E1B/LOXAN$*"S-
M1*?]9'=*&"51V$1HB=!V<=-XPV? *BMM[- 8:"PX:5Z8JK4]%9C;7C?HNO"5
M",B$'+^SU),H;!RV.#FS^<VT&K>MW[0>^!6%8[MXNN*/\M?US_=,774+;QY_
MT@[NT+_%Z,[P%W]>+.NON9Y^S]]^7>;3_WD[_19NZJ?IY>_3'ZMPL;]>+*OG
MF19H7BFK@Q^B*7?8T>"-2&<(=-)K($W@;QP_,[TU$(\]W6O-R/WS\B)%WUO6
MQ!XPN?;]W97]G6S?Z'T*O$24BVU%&L_.J8?[>IDIW<)0I7'\XK'^,V0O<DG"
M7<;KW %[85I?@BU\SB_S@DC?:N4YTEHKQ:D43$CM6;D^2 (MYV]!2>_A*_)S
MM7[QQV'_N+/.NT^?G)U\<O_A/OR[FZ@/=O(/]\E__/2K^F#<Y*/^Y?W?U9?W
M'S]\?I(>M\BX@R&$CPXA5QH$C'/'N0F1B-1(P?KCX2M)F(%ZP?]P$Y;@V=GV
M>BNK]?;V6G[? A[7[76('WZ93;_.+F?K'U_B8\8[TI>+L_]Y<]_S<>>(T!X8
M[KSG!G-OZAN4QK.WH)&@1\HCHIP5(8XBAGJ$1"U!+Z1%CP^$HU9Z@R4"EG(M
MI>.;<<30H&B*>? :KB._+V_R)RSKL67IO\-HS+[]Z,+ZRGVK\_Q;OESFY_4&
M5C:9S2M/:7*YB'>1+Z^RR=<?DZI28#);3::KP%67P;M?_?1R+?='5MLMQKFK
MQ+[]V*TK/OGI8]%QY^!="-^;?^5^JN[RS<-K1"7JCKK6(T>O*;3^S(L==-OY
MV./A@3W?J0G1WBML+]/<G^S<B],];M1LW$_V4-\?<PE=]]G0AP;KV-*D^^A$
M#3E_"@"B.6O)&4L%L9?,$N:5I-IXR.OS#8XBLK7+?5_(M0FU[B1*WY>!V]&7
MZ6#!,@A?179JF,G;Q)&)(T^-(UNBR$ !C@%E6@D F756F;*/*B& <+2U9?Y2
MCA1CX$C$,XK@Z7+DN(K54P.C$](3*0B/M[22D37*2R41!0@J)*G2E5-("%)\
MJZA[L$YA;ZKO-$,PB?0EZ X#NBU-8*@XA,1:PZRG&C&LZJIE J38+N\;K*_2
M&W1!QZUHAN]Q''<:;Y]6>F,.3$_S_.NS^)"(#1]BR(+3X@3P1G%G-";UWCYP
MAK'7RF\]J&78 :/!#+,>"@B/Z*!PHH%$ _?0 .--"D<P*CW$V&ILC-0*2%>[
M11JZ9U46=> 6]4D#.,.RTT941T<#8TK!%#_]?JL&Z9$VLR<0Q;W 5G&PU?/%
M3:S.VF<+_^CR\<\=A&/.RW/9D#IAS@/#"+9 .*(ITJ0J+ 4*W'.4;0??K@O5
M:!@[.G2I4_OD1 \S0YY(*I'4:9"4@(UD+11,4$"$\MA8APHWM"0IB%@(2SOP
M/+MP'BG()&:)I'H\I]:<;WC.H8MG'!9X7AW]HR?9.AA)<S&=?\]7D]E\LG[)
M48'?\V6^WPF!O<_HC?-0P'ZG .B3IP X2X7YQU=V-+#G.[7B[ ?*\$]D#T=/
M+Z?SLT#WZ\G7/-#6/*X%BV^3'_ETF?*YJ=XPU1L*P5/(D"K^#D?1MO#:@_L>
M:+ERW$_<,QEKN9 $O-7>@F%+@<!& HFPX8:IBFJXD=+45!/NX'&:>3\_6^;3
M5:&K4YO2/;HYLBO='"EQ!D&7V][#YY'C]@$_Y6>+[V':HT$&CKF;)4ANX([;
M^L>W;?^P7&')3[AI.:P, \H)[YR&P0G2@M>N$!'6XZT>I8]R5"7]51GB/_/S
M7@D*PPS35SD0L6VZ^TQU?_J"XW*86C%M/C_?(YH= 5NE?:^T[Q69F^&T.9_V
MO>[L>[U<C;'?+:ORQ_CVGV;K,+IGL;)J.9VO*IO^QW(6:%U=7B[.INO@H*X7
MD_5%/OF47TUG1>+R'X%;HTE%]O_X-4Q/J5+<WP965Y/_)3S&]/OW91[N./SM
M*O@2Z[APK5M/?UT\_?3NTR\W3W_=>OI%\_3A'=?+?!7/<!1@C4AJO/OP'6&=
MO)BN)O/%.BR4,0^<S\.KM2LV^?,;'?R;R\7W-W_))K]?S,XNJFW#?+45*TRF
M8<$M;W]5?O/OL\O+\)7A([\MPOV?%^]H??MTM?GL;#[Y=K.^6>;Q26:+\]6[
M277E^*XP&O4\OGAX'Q??>?'737X/][/SITN^_G^>(&S1N-J<4,@H1DAY:B0G
M@&)<$C8'&H.'^AUL8-%"10.*%Q,WWQ"W?+SH_1W93CU.PFIQ&?YRA[U?/'99
M-(/2!G_/)_D?U_G9.@)A8U"3Z?7U<O%'N)5U?OECWTEZ:HZ:8A*L";'8"8X(
MYUYZ8OWF=)<!2NTT1^&7<9=K^CU_X'Q#7;W\K&]SQ6CEYU^B?/OWC]\^A]^N
MOI5/]GD]7:YMU'=O%T5W^[7OSA?Q>_X+ 03> AC^;5E;,**BV+HQ.+2QM[?H
M<4]A.]?TIWWMK$U+T6,OF'8>QK\CBZKE-.\8E&ST+"E2C N%$4&8<!=>X@IJ
MIYWGS$LC=C*HQ^;J'P7GPK%:6LN WJ[RLY_.;Y97X4$O F&AK2*@?:VG^.95
ML=0U2_1Y:4;+O!!@?M>[._8Z/NIY2SE:6H*E11PAXBB41@*'F/4&4<80-5O*
MT;L_'^NF0NK/D/^E] FV_WQ.)=C3^KE[R>_"EL*P^?CKK^\_?RZ5A+?%@]M3
MTL&-/Z6=_%HE;)_# A"]UJNKV6I5.+/Y=#D/;N/7'Y/%S7*R*EX/V(Z><7 <
MPW.O9@%HX1VSN.\1S_%,+S<^9V#RL@ILL5H7'N7BZ[IRGJ<;WSBXK.N+^',5
MZ[Z;;-]%N&*XP&P]"U]>?VY5W,'&(Z[ /X_N< A'HZ\;OR&?KV[B.:/R*B4[
MW$J_3U>KQ=ELVG;1BQ5H6GG%\3U?\WG^;;:N/.P\N.^_Q2O'\KW9O P-@LN]
M,W^M+Y9YOCO[A:OWM4H*!G+:$@ RU&,,M6).>64\8)15 D#86*UU>Y>LF$73
M3*(JYV7:+'X/9IV+$V2?8C5EL6K%GWZ=!B?SYJH^)';/\O+[8GD>HJXW?UO%
M:2QRD*NN5YIW$UO;6]L\8P7G[:Q@]U%*.17->5ZB@=<*(,LT9(X$Z@>T]H!I
M\(BWTDK3ZR+(#\"H,TPFP/)#OGYQ:$(WKB)[7&% OMO6%YA<=16:]#S6LHD(
M!1$&6NL,%99"'O7-ZPYX+KB)9J^Q?KP(Y=EC#=]M^^7=C769$+@_KL\*[HU/
M$AAT%7W&V6\A&'PW:2.^"![GJSS&\J\"%=D$B\)Z:*S!3A&KL=,("E_OG4EH
MGSM][<?99</LN5,)>8^P>8VQ9R$&J,>>:0^E%MY [A0"(5;'M(:.50QT,_:B
ML[&G[^[)IAP)93'0R)E:395Q7 )/#! &>!8 (#W73!-K04<V_V3WIV>/.WR'
M>AOWPGT,KM^>MK_^/;_\;0\_K8I2\Q"9G@\FM[J'3;9%M7=94N9[C$*TO3VN
M?7N=^A*S!.4QG/DBQ!GGL[/I>K$LEKS9U?5TMBS[>,0T_66YFE6; 65@<]9@
MIS:U.J4^J;8"\O,'7,<BE"BV *HD_WD9J83/A0N?U\MF>:HH[EJ<A4^'!_X1
M@ZBSC<A"#-&J;?C519ZO5P^LOL4#E!'+^7VW,ULU]Q&NN,H# .??L\GW$ $M
MJ\AN>AZBGMEJ'76M?LM?<(>K6NNJ&-GXKF4>(K95_)9PU1#\]9^EZ3\K8Z'T
M0@N"E9;4$*J1\Y(8 21DPF'RXJQ,MQD8\6@&YN6MAS[??%WE_WL39M7]%J?V
MT09#WNH0J"#O 1$PZL@:ODF$0$1PJ\&0)-HC&09/,>@89%2$<*=L, 2(-?S1
M5,^3UX%W&PQ]_G?]V?W;O[L/7R:QM]27SP^&CL_,^3SC%H9ASB7[34ORB_LX
MRYAER7\K<;IL[XFNZMW+ -C%V=E-01^KC0'LE8GH>%T[:B895*=#W%FG0VJ]
M-I1:HI2E$BCA!'14Z_"3H2;XI'\[GDZ'SS&?K5Z:W3*Y[)C)_^UFN@S#>/G#
MS^;!DP@L\'Y>NNP!,(_2.E$.A6!#<\8D"M$U%8;77*<=A"U:%]1QP*$P44K<
M(NR-E36M>R/DH[3^Y'6V:/W?_EU]^N(^_?)_)_[]!_7!O%>_3-Y_*/H%QBZ!
MDS_?S*<WY[/@G?SE2<+?86T\N\C/;R[SC]\>']LG&_,1:*5 A"*NH7'48<PV
M9^ 9]: UP-Q0:[%PU)H0>#/G&*.; 2:*;'76>WHI>\:POXA/14^0B%4]Y2'Z
MZ'I6!]##FZ:SL'*MBL>)'GH] \'GW$S!Y-MR<379&,,=5[5T3@O?/I^>74S^
MMYS-O6ID]JN(V3=XVCUPV\@3')%F0'F 7O)W#%&!@:3!%2=HSRZ!&#TI$! O
ML8,*0.>R NE:Z5JCN-:SFC8?QZF)YVE"P(<./<7G[$,1HG?]A\H36DU<S(/N
M=#AF7',,Z0&$/W:KO>]9 ^0$S@>=^*SOUH1S7'@?AL[/84W!YF?O)AB>. <D
M2WCSM\_Y]3J8 DBF</*F\']NYGFRA&0);_[VZW29EH=D"<E12):0'(5D"LE1
M2);P4D?A9+3$BB-+K]4*)TFH#EQ]1DHH<@AQ<_A!*J$]9$))P(0V& /F8/B-
M5LY+2+9J%BJ+BO*%]RG1N#\J!7NU6N7AW]B2]/[#$/_6B7H8$B(3N--V7L<E
MKCHH_AJ2FE;BK_'R%VT.LFB*A*?2.T\!(! *(N%&Z0.2AY0^]N8OW!%_<9H1
MT&6'],1?B;\2?PV;OWAS9-Y#:YEPRD!' =,$.+U1*D(./R0LLS=_H>[X"Z).
M=0$3?R7^2OPU:/Z2#7]9!ZB3$%L+H&:&B]@NNN0OX@.Y]<5?L"/^(CP#[(2;
M<R3^2OQU:OR%8"._;"5"W%BHG&,:*PTIM#5_,4"VA!"ZX2_16?Z+P$R*5U'/
M3_R5^"OQUR#X"S?\Y871D"A/L!:. V@V[6\)P-1MZ7QUQ5]=Y;\P"_Y7RM\G
M_DK\=3K\15O:>=YR9P13S %# [,9;3?Y>R1ZRM^+SO)?!7^E_'WBK\1?I\-?
MO!$P5)S8J#[$-=?&,<>-K\4C 81V2\"P*_[J*O^%8 ;Y">?O1W2\[._+Q2HJ
MRBV^S=9/% >.L&5K!<UV$Q#@.39,(60D5XPR"F15VB0PQ^@N-(OQ^T<Q?'V6
M+$&",L3I&#JRGE(][6@A@UNRL(@SS3$GV%FB!1$*^*K-,18,\*ULZ%.0Z2A+
M$.XQX[#++$&"3(+,'I!!K9X'@#)NA$(88$^$M1BZ6CT<(KA5P/$49#H*3(.3
MFHE. ],$F029/2!#VFU"@D_FL?92>.F\(Q3I&C(8\ZV8Z2G(=!0+0<@R0+:U
M]1-D$F0. IE6EV!CA""24!J+G:6U'.&ZS)D0JK>V>1Z'3&?;SQ#23/ NMY\3
M9!)D]H!,JT\K &$D)!%.*8($Y4)"7*\RC).M/JU/0::K6 ;"C*$N*\X29!)D
M=H<, 0UD"%54<JV8___;.[?=N&T@#%^W3^&;WFV2X6%(3E$$X!$(T#0%6J#7
M=JS6!I)-:N\6S=N7VK6DC97&V8AVM&L:A@%[O0=1^GYJ^,\,HS>@;>*\+Z9Q
M>0;:%YE2L0S0@NN*3$5F)LCPP?])PH*),3@.VB3K(Y-A\'_VOS$K%<L 7Q@X
MBD7F+W-H#KM._\6V@_A9DT]IM]G-R>KTWV;8V/XK(2LZ+O.@3P[T<4/12V>M
MU]9#IH^K=&/Q."7,:"5A.\X_9P0[ _9RN<X'^>I]<[5I]'[M-J=@^W^_MR?@
MY>7R7?ZL'UZT+2F:ZY5=GG_\*O'O=7[X9;.Z>)<?^2?_RZ8Q_'U:2%(O-#U(
MTLEL)\ICSBMYS'"K8:L*WQ80,990AQB=S#,KV2Z TP'4W. N%"!*6"".=SNL
M<%>X#QUN34/?&<^2 J!H($0B J'ZNF>;:)2<\:WA+A3*"K60;+P3<X6[PGWH
M<!/MS-Q@?+2 WB(:0UICYXE++\=-6;XUW(6";H$+T ]2RU+AKG _)-S(S%"Q
M$5$&L([ &P4!.(+OX(:4Q+S@+F9UYMMR!A7N"O?QP2WT4 [O&)G$8H"D*%KE
M ^_;>01';FYP%XJYA2GLR5:X*]SS@!L'N)WRD@??ED5HS\&HUNOMDH@8FQW<
MI6)NO= /TV*QPEWA?E"XM=II!)&A48Q9K6(@Q@/ZFYVSI0_"SVRUO)C1+6@A
M'Z;_\\P-\(/PN7]I5C?N]F/-'4$:D)7<.P^1<1>Y0F$DVJ[W.@C.XFUD\^@-
MO-VKOZP*^\NSG1@?T_QWL,PHACM+RX%10&8L2$I PGOL[F$M\Z-[V+N9*6?;
MBLI,968NS(BAWHI3OB<4G$/@AL"3U[9/ZXVD1E[KW<R4BLS8@JBD&UJ9J<Q,
M8 8'9BRZA$8)I1D@2JE=ZON"6E*C2OB[F2G5L44O1"U2K,S,A1D]%"D*9CQC
M23.+D7,5F!/0)>REH/6^S!3S[O(\4S:EKC)3F9G # TE5\E+LC'/-3):%3,V
M+/6I,L+#J$KQ;F;*66)4=&./RDQEYNN9T6R'&2DD3P&CM):U7Q1#WW(E,;D_
M,Z7B&5HP5:OA*S,S848,E5**>S3@, I*02 P4'T#B?B)??+N9J:4@:,7AM="
MQ0,I5(RG5\O\AM<G[YNKD_/+-^M5DP_VXO3J?PR=XF!-MN<.I ON/ 0$![,J
M6@!-,7J+3GA",A[ZC9[0CQ9$NBOEU^;JM_;Z"-N+Y0MMJ^Y9NY+">T6!S]<^
M/V4E]61^AO!CSO:H@G+0@J)W>HVVVY5P:;GW6EMKA?5=JJE'3*.$E7T$91P#
M3Q.4FCY6!:4*RAP%96<K2JL<,R(IYYF-)EGD_1V*(65PBJ",%PBF" H\-550
MJJ!409F?H!@V"(K(,8[47@K##:+D'N$FI59XQ<<IM?L(RGCU9)J@J%I47@6E
M"LH,!65GLT;)N$-C-1  <&U >][?H40S05 ^995/$Q1=!:4*2A64&0H*#H)B
MK51DG!3YVWNF>8YZ^BPU+28LRGXJCV":H%"MKZV"4@5EAH*BA]0*@@#&$&.J
M3>+SSD4W-/=@<522M(^@E%Y#H>,N^ZN"4@7E0 6%AKP3X3'HJ+AJ]TE%)&M3
M5Y8LG1AW"]I'4$JOH=!QV\9WYZ?<8W+7Y"MO<UZO3];7S?G)Y3)?#F_?KU?Y
M';LLE(\/N.0[;X5J^_.DV4V ^4SBR_%GEQ$,#?^83(1!I(0 C"4)RIN;2F94
M3(VJ,O]HV@_:G-L\)J=_-;^LWYXU5Z_^O(%]>ZI?K5?7J]-E>^Q?DC2R.1?7
M7UNZJ47=7N(P;@T> 5A\:+:'*J"7UD@;8LRSIHFAMR \BE':9@FP1$FP>%&G
MLX)5P9H EAQZ87&>06(H)0H7540==_H("#.JNRD!%B\&EJ"%8:*"5<&:!UAJ
M  NXB,P*9%XHI:(AQ?K"Z<S5* NG!%BL)%AHCJ(:H8)U#&"9(0$_0V3 4>"D
MG-!)D^SVLQ1>"CG:ZV@Z6"-3>>*,1;4TKH(U"[ X .ZT114 ,<.5.%JEHPH.
M.["X%N$^P"H:8R&O_4 J6#,!BP]@1?311!TIIAQDY4@+0^C LMS>RXQ5+L9J
M%R]J X0*UES DD-BLA>DDC;<1X%&.?(Q8M_0S:212U\"K*(QECF.Y?:-H_9L
M=7KVING^7N2U\\BT9^!RN3Z]&9KM6.43EU_D]>9PNR?>MKMV#O]UTS9JOC4\
M;RZ7S9.+S07Q(^/P0XGQ24^$O'4([<_ONE_.WIU_>/[]3\\N5F_?//\/4$L#
M!!0    ( ,&&4U!/4>(LK ,  .H2   9    ='EL,3(S,3(P,3EE>&AI8FET
M+3(S+FAT;>U877/:.!1]3G[%+9W--#,8^8,D!%QF$B"[G<T2AKB3Z:.P!=9$
MECR2"&%__4K"=-(F:4*7;IK./F L2_>>HZLCW6O';_H7O>33: "Y+AB,/IZ>
M?^A!S4/H*NHAU$_Z\$?RUSDT&WX B<1<44T%QPRAP; &M5SKLHW08K%H+**&
MD#.4C)%UU41,"$4:F<YJW=W8/NKN[L0YP9GYWXG?>![T13HO"->02H(UR6"N
M*)_!54;4-03@>9]']D2YE'26:PC]T(<K(:_I#5Z/T%0STAW<YG1"=8Q630.&
M*K1X(K)E-\[H#2B]9.1];2JX]J:XH&S93FA!% S) L:BP+SC^A3]F[0#O]0=
MR]Y8=F,,'!?&5@V"P<GA47AXX)]&!\='8>MTT H/SL+#H-D,!KVC6C=&V/R<
MU?JR1F:4$R\G=B[M(/1_ZVARJSW,Z(RWW0SOX\?VR4/,*<^)I ]85*& ,(J1
M[;Q#YE$>6X"-)[+[)>"=&+B^3:*1&F40N0U>/<&5E9F8P@>>D9*8BVF.R8PJ
M V&$-YI/&$WA)$W%G&LKPC,JB^<'[X?0OA_.9U)@9+H5&5T12*O0:0$Z)T!Y
M*F0I)+:' $R6(,G4!)"GMLN-F K&Q,)&<!7>:NBE-AO<[G75AA>=T_V@:CQA
M9J*$L1)GF6'^ON;77%N5.%VWGW%PP'TP;<!TMC9>T$SG[6:KO+5]2&>VL[I!
M;N@7PV^(U#3%K(J %F5MHRU<3<>SH6O[*]"-X_4NV/]J2Z]H/TZR\P3+'["H
M#TL-WIT)6<"EUX*A:$ 415X8'OA!L ^E88TIMS*ME)T8- D)27,NF)A1HNKF
ML$@;)N$$+>-3I-=P43J $<.\_D!0W!(B)Z?_5?6$JL)?255!*XR"UD:J&A0E
M$TM"*F6-YC+-L2).6YVGM/7B1^9_3,#D;3&7)M>8S*,59*Y67#/:V-L9F<@Y
MELN]M\&AWPF.ZZZF_&YW=5A0G1MRJB3IYT1I\Z9@=$5U2CGF*<7,.%ZG05N,
M/*:..F">.3=D.C5.Z0WA1#D3:HL+4WY; "T% V&VRAV 58RL K_IW^1Q-L\,
M-9>UJ8(3SN?&?.S,*XD'OO?G_K?\F*-).II+@B78JNI?+$N?I*28$+E:EBBP
MRQ(<?[>[QD]69;R>ZO$GH+"U%R&D$ S&P\MDI:H]7)0=^'3Q<?@[G)^/7J=$
MMD6@CQG#9B<GY!:K%V6RY1-Y[VT4=E[1VOXR@%^]Y+_4]X:==<-]]MF-W?>H
M[C]02P,$%     @ P8934'X@' M/"   YSL  !D   !T>6PQ,C,Q,C Q.65X
M:&EB:70S,3$N:'1M[5OA<]JX$O_<_A4Z.KUI9P!C2-(4:&;2A,[EO5[;Z7'3
M>1^%+6--9,DGR1#>7_]V)3LQ"6E"+VD.'IV6(FDEK:3][6]7-L-?3C^?C/_S
M9412FPGRY<_W'\].2*,5!-]Z)T%P.CXEOXU__TCVVIV0C#65AENN)!5!,/K4
M((W4VKP?!//YO#WOM96>!N.O 0ZU%PBE#&O'-FX</1]BU='S9\.4T1C^?S;\
MI=4BIRHJ,B8MB32CEL6D,%Q.R;>8F7,2DE;K4O)$Y0O-IZDEW4ZW0[XI?<YG
MM)*PW IV-+I(^83;8>"+,%E0SC:<J'AQ-(SYC!B[$.Q=(U'2MA*:<;'HCWG&
M#/G$YN2KRJ@<N#;#_\OZ82>W ]0>>AX-*9$T@[ZF<W*ZWPL/1H?[I^'^7N?X
M^/A]KSLZ.#@<';\Y>-/9;QP- PK_7*_JHYI9<,E:*<.U],-NY^7 L@O;HH)/
M9=^M\.;\0ZQ9I3F7*=-\18]R*T@O;(?# )LK=6I*372M>!_U(C@JIA]"OY/1
MU_'9A[.3X_'9YT]_+&MX3V4$2QYDJ_PV/*$"9TWR6YM\7$A)?E=*LR;YEVXW
M2<2TY<F"V)3:_@\I^'#'M=X>Y32. <8MW*!^)[_P.G$9@SZNO+X*U9 .(/V]
M0S=(V*YT6G_/24IGC&@VXVP.?L>FW! J94$%5.9*6Z(D^:!T1L).Z]]$)60,
MHVLR9E$JE5!3SDR3G,FH/;C_QCS*25@Z$0RL18ARD]XU.@U7-CF-JO(]W!ZY
M.9F%R6Q<=9[SV*;5YH.7C;&Q_!(XT27Q&1IP1$5IC5;EC;6VYX89_<A^==OD
MFO_S:M^NY. .+1_! [RG!FP0#"Y;D'.IYH+%4W #SBA+:XP5G)54P)30F7()
MQKH@A;2Z8# 5<*>C43!32C(H:0Z&G- (JC11&3"!55[NAH!D$3.&Z@6*9/2<
MP;RU,0W4Q: ,3"D<_\(<*!!Q#=P-8A*Z@R8Q@&.>\B@EIL"/J_YSIEDY""X@
MXT8 *R//S[E-88$F9Y%3$,?-0345PS+A9&!3)HOZ-@Q6G*6SO,"A8+V#6[(O
M9]5U/]5R-3O$_G3$]MH;#%A&$BX!$HBN*P@T :T@#LVZULYE OQ",9J&[Y$H
M8A@38%:S]R9 E&NQ(#F@! &.P!?B"L$E>,RUJ<%)Q"Y,;Z)$(4  8*L 6VXZ
MX_2)J$E)(M3<5)C6;,J-A1C?$HJ57F_0LEF#IJF4N:'M#IW;C\Z]3>#3\9(M
M__KBL!N^&9@2@&5<C?RCDH1#T5GY&:&:.3P!/CB: -@]80;-@9L4Q5$L ^Y%
M_L5RS$TDE"F@'[*R5L(#*]<J8C%4&_(*<!0S *8'R^@B2JF<,G(,A/>U$" 1
M]F@KW'_%7KNNX7[L2[[(,8"7'M X/D%6)*JHNQ&//=3GWI,E2Y,E,!FNU0>X
MV("Q<?_G@?FAL/SKB_"@,[CY^;3X?GOP%/BNO,K:FT@W@'Y/F8'AP,I=J'D/
M&()U1[0P:_2 :'3" $WE1#Z^1>"9 FAPQHTC5Y!BTHV#6?H5+=>I73-!'3S+
M /?*,35+VL=&#A0-N^C&A7B!^[#;!1<2>Q8&0V'GP8R+FQWU*L-  0M4C]EH
M3O%L"D$Q8H!EN$FO0FKHX0/T>EX!WR8,!8'4H3^+'X_$'1"V@K(W#-*3C8/T
M:MY;P7G-Z]"^=\_[(QR\PHS'"%QJE'2F1@V 'C-?1#/5<84TP#JG$RZX76!,
MO6I:]#,.E YOWD4LB=8R9Q>!7)0+R@N= ]Z-RP&B2.G8*>!RZ"F3$-H+@#VT
ML!Q#<Q0II/70!C_#<P@ =N#>.G!'&P#NT8R*PCW?0<MG20(I*Y^!S9H5J>=E
MN'X/EO;%U=FHPS)T!(8U/N>=J,+>KL'=TS5]5NR'P(0^N?O&BDRJJP+GGIC?
M"=!G@(/OX+AM<(PW (ZGWM)O(@;OE,N<T;6LA.4:#(LQL8JB0B,N:@'IBE$S
M92S4XR,K&,O %I&_"HAG8>A7MZ3S"0 <N*\2*S6. &_N'EPN/\]Y[=5)J;D,
MTY$NG2=@L8LCW$:4'+\@@I\S45Z*7Y-O_NV]V:%_&R_']C< _#]V-^:>EL:5
MWVA>L1J2;!V[5P2'(%PCCK^1'5^J1B%#MDJ;R]#95<"06<:M9>P[(<1$07".
M[3$'_=P@KP#HP-@&(P+X'_/TRBVQOPH.ZCL75,@(%_'Z)UZ#;=&=]H:1]B;<
M>1T+2 UA0 ZPQ <T>-$;<08X*N/@R\NG.:/G&-CZ5-&%MB[)=8^"JT= J]!I
M;J=R?W'D;\A7,"2-H:-AEP1Y*Y3+W!BZ !XAA6WZ\-I ;&V*+*,:5NQ64T8D
M*Y^6[<AS*U&X"==4QQ A)QH(J F08(XS 57NM882?DT?9W(Y4V+&,-B4=%J^
MG:%+FF59+M2"0>L\59Y;Z1*X 8SKA."W W?5EOXP3!X%%'_W7;9:_SO?.ZM/
M(-&;B$O3!7/"(9WE/AA.KVD+[FW*I5>/%E95%?ZE-E?C@7OXMGW0?5O[^W(P
M 6?)="M20M#<L'[UY<8A7?D"$ %]Y;O&?N-VZ/L)>[V7-4>QW!8>W-ZV]YUN
MW^E5&_%N;S11UJILV<=TX:#J)U<O>_FE*K_!77^Z-8-YC-P:W$"??& 3#6GI
MPC]_#-\VW5O+Z[BWS5KUJN>LV[2^]XM5><!3+ X=/;ZSTT]Y#'[M20^O]$FE
M]F%^08P2/"8O.N[/IAQN8((5+V#?1IQ;Y*NV';6[]?V?.J8-.;^=T]G"0]VM
M;^=T_LGG]T4SPS$C=M=L)REG"1E=L*C Y^'DL[_UO^O6X-I/"7_F#<*J\_EG
MJ'#M!Y5/\%,P]_FL*KC?O#X?NA_C'OT/4$L#!!0    ( ,&&4U 1%<JS2@@
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
M4$L! A0#%     @ P8934-@LHX,4 0$ Z$4! !T              ( !
M &-H87)T+3 W,3)C93-E,&%A,#4R-#,X,S N:G!G4$L! A0#%     @ P893
M4..KFXR#%@  &^\  !               ( !3P$! '1Y;"TR,#$Y,3(S,2YX
M<V102P$"% ,4    " #!AE-0_5;'C%8I  #3Q@$ %               @ $
M& $ ='EL+3(P,3DQ,C,Q7V-A;"YX;6Q02P$"% ,4    " #!AE-0>Y$ =L9A
M  #2M@0 %               @ &(00$ ='EL+3(P,3DQ,C,Q7V1E9BYX;6Q0
M2P$"% ,4    " #!AE-0L/ _UUC\  "97 T %               @ & HP$
M='EL+3(P,3DQ,C,Q7VQA8BYX;6Q02P$"% ,4    " #!AE-0[A%9+'NE  "9
M4P@ %               @ $*H ( ='EL+3(P,3DQ,C,Q7W!R92YX;6Q02P$"
M% ,4    " #!AE-0QK%SI.H: P#K4BL $P              @ &W10, ='EL
M,3(S,3(P,3DM,3!K+FAT;5!+ 0(4 Q0    ( ,&&4U!/4>(LK ,  .H2   9
M              "  =)@!@!T>6PQ,C,Q,C Q.65X:&EB:70M,C,N:'1M4$L!
M A0#%     @ P8934'X@' M/"   YSL  !D              ( !M60& '1Y
M;#$R,S$R,#$Y97AH:6)I=#,Q,2YH=&U02P$"% ,4    " #!AE-0$17*LTH(
M  "D.P  &0              @ $[;08 ='EL,3(S,3(P,3EE>&AI8FET,S$R
M+FAT;5!+ 0(4 Q0    ( ,&&4U!+'D32;04  'HR   9              "
M ;QU!@!T>6PQ,C,Q,C Q.65X:&EB:70S,C$N:'1M4$L%!@     +  L [@(
' &![!@    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830943616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">LEASES</a></td>
<td class="text">LEASES<div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire in </span><span style="font-family:inherit;font-size:10pt;"><span>one year</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>eight years</span></span><span style="font-family:inherit;font-size:10pt;">.&#160;Some of these leases include options to extend for up to </span><span style="font-family:inherit;font-size:10pt;"><span>10 years</span></span><span style="font-family:inherit;font-size:10pt;">. We had&#160;no finance leases and no related party lease agreements as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. Operating lease costs were approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$9.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$7.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$6.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of operating lease expense were as follows (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:26%;"/><td style="width:1%;"/><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Lease Costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financial Statement Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,379</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Short-term lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,269</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Variable lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,274</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,922</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:75%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:22%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Assets:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,992</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Liabilities:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, short-term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,387</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,822</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental information related to leases was as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other Information</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Cash Flows</span><span style="font-family:inherit;font-size:8pt;">&#160;</span><span style="font-family:inherit;font-size:8pt;">(in thousands):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid amounts included in the measurement of lease liabilities:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">Operating cash outflows from operating leases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,466</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Lease Term and Discount Rate:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average remaining lease term (years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.00</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, maturities of lease liabilities were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,684</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,246</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,960</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,923</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,478</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,042</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease payments</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,333</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Less: Interest</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2,124</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Present value of operating lease liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,994</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,146</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,976</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,925</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,164</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,132</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,337</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Rental Income from third parties</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We own office buildings in Bangor, Falmouth and Yarmouth, Maine; Lubbock and Plano, Texas; Troy, Michigan; Latham, New York; and Moraine, Ohio. We lease space in some of these buildings to third-party tenants. The property we lease to others under operating leases consists primarily of specific facilities where one tenant obtains substantially all of the economic benefit from the asset and has the right to direct the use of the asset. These non-cancelable leases expire between </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2025</span><span style="font-family:inherit;font-size:10pt;">, some of which have options to extend the lease for up to&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. We determine if an arrangement is a lease at inception. None of our leases allow the lessee to purchase the leased asset.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental income from third-party tenants was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$1.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. Rental income is included in Hardware and other revenue on the consolidated statements of comprehensive income. Future minimum operating rental income based on contractual agreements is as follows (in thousands):</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:66%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:31%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,341</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,372</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,402</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,432</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,462</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>857</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,866</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had no additional significant operating or finance leases that had not yet commenced.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock', window );">LEASES</a></td>
<td class="text">LEASES<div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire in </span><span style="font-family:inherit;font-size:10pt;"><span>one year</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>eight years</span></span><span style="font-family:inherit;font-size:10pt;">.&#160;Some of these leases include options to extend for up to </span><span style="font-family:inherit;font-size:10pt;"><span>10 years</span></span><span style="font-family:inherit;font-size:10pt;">. We had&#160;no finance leases and no related party lease agreements as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">. Operating lease costs were approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$9.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$7.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$6.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of operating lease expense were as follows (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:26%;"/><td style="width:1%;"/><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Lease Costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financial Statement Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,379</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Short-term lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,269</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Variable lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,274</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,922</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:75%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:22%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Assets:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,992</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Liabilities:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, short-term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,387</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,822</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental information related to leases was as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other Information</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Cash Flows</span><span style="font-family:inherit;font-size:8pt;">&#160;</span><span style="font-family:inherit;font-size:8pt;">(in thousands):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid amounts included in the measurement of lease liabilities:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">Operating cash outflows from operating leases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,466</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Lease Term and Discount Rate:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average remaining lease term (years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.00</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, maturities of lease liabilities were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,684</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,246</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,960</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,923</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,478</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,042</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease payments</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,333</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Less: Interest</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2,124</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Present value of operating lease liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,994</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,146</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,976</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,925</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,164</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,132</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,337</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Rental Income from third parties</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We own office buildings in Bangor, Falmouth and Yarmouth, Maine; Lubbock and Plano, Texas; Troy, Michigan; Latham, New York; and Moraine, Ohio. We lease space in some of these buildings to third-party tenants. The property we lease to others under operating leases consists primarily of specific facilities where one tenant obtains substantially all of the economic benefit from the asset and has the right to direct the use of the asset. These non-cancelable leases expire between </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2025</span><span style="font-family:inherit;font-size:10pt;">, some of which have options to extend the lease for up to&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. We determine if an arrangement is a lease at inception. None of our leases allow the lessee to purchase the leased asset.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental income from third-party tenants was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$1.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">. Rental income is included in Hardware and other revenue on the consolidated statements of comprehensive income. Future minimum operating rental income based on contractual agreements is as follows (in thousands):</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:66%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:31%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,341</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,372</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,402</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,432</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,462</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>857</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,866</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had no additional significant operating or finance leases that had not yet commenced.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasesOfLessorDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessor's operating leases.</p></div>
<a 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 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph Note 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph Note 3<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888252<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesOfLessorDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817886048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAX<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAX</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">INCOME TAX </span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The </span><span style="font-family:inherit;font-size:10pt;">Income tax provision (benefit)</span><span style="font-family:inherit;font-size:10pt;"> on income from operations consists of the following:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Current:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>12,814</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,110</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,883</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,585</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,367</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,666</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,399</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,477</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,549</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,088</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,069</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(33,664</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,311</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,408</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,115</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal income tax expense at statutory rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>33,566</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>32,733</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>57,209</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State income tax, net of federal income tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,953</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,754</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Domestic production activities deduction</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2,617</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefits related to stock option exercises</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29,819</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(32,487</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(40,624</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax Act adjustments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,750</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(25,992</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax credits</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,446</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,715</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,578</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-deductible business expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,011</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,655</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,573</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other, net</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>160</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,311</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,408</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,115</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax assets:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating expenses not currently deductible</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,214</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,989</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option and other employee benefit plans</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,308</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,496</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Loss and credit carryforwards</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,841</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,999</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,363</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,484</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,923</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,049</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets, net of valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>51,440</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45,435</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax liabilities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intangible assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(84,019</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(70,752</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,265</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,455</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Prepaid expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,922</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,079</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,676</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,940</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(99,882</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(87,226</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net deferred income tax liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(48,442</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(41,791</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:Times New Roman;font-size:10pt;color:#000000;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had federal net operating loss carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$85.2 million</span></span><span style="font-family:inherit;font-size:10pt;">, after-tax state net operating loss carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$3.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, and tax credit carryforwards of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$4.8 million</span></span><span style="font-family:inherit;font-size:10pt;">.  The federal net operating loss carryforward will begin to expire in 2032 if not utilized, and a portion of the state net operating loss and tax credit carryforwards begin expiring in 2020 if not utilized.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The acquired carryforwards are subject to an annual limitation but are expected to be realized with the exception of certain state net operating loss and tax credit carryforwards.  The valuation allowance disclosed in the table above relates to state net operating losses and tax credit carryforwards that are likely to expire before utilization.  We believe it is more likely than not that all other deferred tax assets will be realized. However, the amount of the deferred tax asset considered realizable could be adjusted in the future if estimates of reversing taxable temporary differences are revised.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with the acquisition of Socrata in 2018, we recorded a </span><span style="font-family:inherit;font-size:10pt;"><span>$1.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> liability for an uncertain tax position associated with acquired tax credit carryforwards. The unrecognized tax benefits are included in deferred income taxes in our consolidated balance sheets. The entire amount, if recognized, would affect the effective tax rate.  There was no change in the balance of unrecognized tax benefits during </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">.  Based on the information currently available, we do not anticipate a significant increase or decrease to our tax contingencies for these issues for the next 12 months.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are subject to U.S. federal income tax, as well as income tax of multiple state, local and foreign jurisdictions. We are routinely subject to income tax examinations by these taxing jurisdictions, but we do not have a history of, nor do we expect any material adjustments as a result of these examinations.  With few exceptions, major U.S. federal, state, local and foreign jurisdictions are no longer subject to examination for years before 2015.  As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, no significant adjustments have been proposed by any taxing jurisdiction.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid income taxes, net of refunds received, of </span><span style="font-family:inherit;font-size:10pt;"><span>$21.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$6.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$36.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817411712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Disaggregation of Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Schedule of disaggregation of revenue</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,305</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107,912</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>978,515</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,188</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,253</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>98,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>836,436</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>69,167</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,075</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>754,053</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>690,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,514</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>726,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>295,193</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>58,308</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,757</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>570,645</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>34,424</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>605,069</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>269,400</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55,932</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>330,213</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>502,018</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>29,477</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>531,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>252,690</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,102</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>309,404</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842524736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Summary of Changes in Carrying Amount of Goodwill</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The changes in the carrying amount of goodwill for the two years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> are as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:63%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>651,430</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>657,987</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of Socrata</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,657</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,657</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,074</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,074</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2018</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>747,161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>753,718</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of MicroPact</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,080</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,080</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>833,560</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,117</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Summary of Other Intangible Assets and Related Accumulated Amortization</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross carrying amount of other intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>321,019</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>238,219</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>262,286</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>202,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,804</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,037</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>616,051</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>461,234</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated amortization</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(237,137</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(184,382</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total other intangibles, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>378,914</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>276,852</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock', window );">Summary of Allocation of Acquisition Intangible Assets</a></td>
<td class="text">:<div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="22"/></tr><tr><td style="width:35%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,117</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>753,718</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>321,019</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>97,320</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>238,219</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>78,120</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>262,286</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>130,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>202,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>99,772</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,139</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,804</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,037</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,694</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,351</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span><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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Summary of Estimated Annual Amortization Expense</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs is as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:62.77777777777778%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>54,045</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,687</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,989</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,838</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,005</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.</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 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_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=108376223&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=108376223&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived 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 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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817307856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Summary of Weighted Average Assumptions Used for Options Granted</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following weighted average assumptions were used for options granted:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:65%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected life (in years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected volatility</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26.6</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26.7</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28.1</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Risk-free interest rate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.8</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2.7</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected forfeiture rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock', window );">Summarizes Restricted Stock Unit and Performance Share Activity</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> (shares in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:60%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted Average Grant Date Fair Value per Share</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at January 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>336</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.29</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229.75</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>334</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.25</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>241.19</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(76</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.15</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(14</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229.75</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>500</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>231.57</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Stock Option Activity</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average grant-date fair value of stock options granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>74.54</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66.52</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55.56</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total intrinsic value of stock options exercised</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,899</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>176,716</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>137,699</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:53%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average Exercise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Contractual Life</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(Years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intrinsic Value</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2016</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>83.64</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>824</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>176.26</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,113</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>44.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(50</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>134.83</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,817</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107.91</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>432</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208.21</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66.53</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(31</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>158.80</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>129.51</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>162</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>251.58</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(999</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>96.92</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>174.54</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>145.27</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>499,124</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercisable at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,067</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>121.07</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>369,938</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Summary of Share-Based Compensation Expense Related to Share-Based Awards</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes share-based compensation expense related to share-based awards which is recorded in the consolidated statements of comprehensive income:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,002</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,588</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,415</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>44,965</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,152</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,933</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total share-based compensation expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>59,967</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,740</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,348</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29,819</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(32,487</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(40,624</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net decrease (increase) in net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>30,148</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,253</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,276</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-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_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</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 (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&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 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=116856206&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=116856206&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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6846693968">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible', window );">Operating expenses not currently deductible</a></td>
<td class="nump">$ 10,214<span></span>
</td>
<td class="nump">$ 8,989<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits', window );">Stock option and other employee benefit plans</a></td>
<td class="nump">19,308<span></span>
</td>
<td class="nump">19,496<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_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards', window );">Loss and credit carryforwards</a></td>
<td class="nump">23,841<span></span>
</td>
<td class="nump">17,999<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Total deferred income tax assets</a></td>
<td class="nump">53,363<span></span>
</td>
<td class="nump">46,484<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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="num">(1,923)<span></span>
</td>
<td class="num">(1,049)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Total deferred income tax assets, net of valuation allowance</a></td>
<td class="nump">51,440<span></span>
</td>
<td class="nump">45,435<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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="num">(84,019)<span></span>
</td>
<td class="num">(70,752)<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_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="num">(9,265)<span></span>
</td>
<td class="num">(8,455)<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_DeferredTaxLiabilitiesPrepaidExpenses', window );">Prepaid expenses</a></td>
<td class="num">(4,922)<span></span>
</td>
<td class="num">(4,079)<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_DeferredTaxLiabilitiesTaxDeferredIncome', window );">Deferred revenue</a></td>
<td class="num">(1,676)<span></span>
</td>
<td class="num">(3,940)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Total deferred income tax liabilities</a></td>
<td class="num">(99,882)<span></span>
</td>
<td class="num">(87,226)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred income tax liabilities</a></td>
<td class="num">$ (48,442)<span></span>
</td>
<td class="num">$ (41,791)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets operating expenses not currently deductible.</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;">tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards</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;">tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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.</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(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&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(15)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and carryforwards.</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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</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> -Subparagraph (b),(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 differences from employee benefits, 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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 3: 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=84230637&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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assets for which it is more likely than not that a tax benefit will not be realized.</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> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=116821951&amp;loc=d3e31931-109318<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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 including 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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxLiabilitiesPrepaidExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 consequences attributable to taxable temporary differences derived from prepaid expenses.</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_DeferredTaxLiabilitiesPrepaidExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 property, plant, and 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 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: 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=84230637&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_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxLiabilitiesTaxDeferredIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax deferred revenue or 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 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830957152">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Liabilities - Summary of Accrued Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued wages, bonuses and commissions</a></td>
<td class="nump">$ 49,126<span></span>
</td>
<td class="nump">$ 40,100<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_OtherAccruedLiabilitiesCurrent', window );">Other accrued liabilities</a></td>
<td class="nump">26,108<span></span>
</td>
<td class="nump">26,380<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">$ 75,234<span></span>
</td>
<td class="nump">$ 66,480<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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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=6877327&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=118951113&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=118951113&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=118951113&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842008144">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">$ 616,051<span></span>
</td>
<td class="nump">$ 461,234<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(237,137)<span></span>
</td>
<td class="num">(184,382)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Total other intangibles, net</a></td>
<td class="nump">378,914<span></span>
</td>
<td class="nump">276,852<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember', window );">Customer related intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">321,019<span></span>
</td>
<td class="nump">238,219<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(97,320)<span></span>
</td>
<td class="num">(78,120)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember', window );">Acquired software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">262,286<span></span>
</td>
<td class="nump">202,416<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(130,416)<span></span>
</td>
<td class="num">(99,772)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade names</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">22,905<span></span>
</td>
<td class="nump">16,905<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(7,205)<span></span>
</td>
<td class="num">(5,139)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember', window );">Capitalized software development costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">4,804<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(296)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember', window );">Leases acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Acquisition intangibles, gross</a></td>
<td class="nump">5,037<span></span>
</td>
<td class="nump">3,694<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">$ (1,900)<span></span>
</td>
<td class="num">$ (1,351)<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_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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember</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>39
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813696144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Deferred Revenue and Performance Obligations - Deferred Revenue (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2019 </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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="nump">$ 412,694<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_tyl_ContractWithCustomerLiabilityRollForward', window );"><strong>Contract With Customer Liability [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Balance at beginning of year</a></td>
<td class="nump">350,936<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_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral', window );">Deferral of revenue</a></td>
<td class="nump">993,109<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Recognition of deferred revenue</a></td>
<td class="num">(931,351)<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_ContractWithCustomerLiability', window );">Balance at end of year</a></td>
<td class="nump">412,694<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Enterprise Software</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="nump">327,521<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_tyl_ContractWithCustomerLiabilityRollForward', window );"><strong>Contract With Customer Liability [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Balance at beginning of year</a></td>
<td class="nump">327,521<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_ContractWithCustomerLiability', window );">Balance at end of year</a></td>
<td class="nump">386,115<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Appraisal and Tax</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="nump">20,018<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_tyl_ContractWithCustomerLiabilityRollForward', window );"><strong>Contract With Customer Liability [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Balance at beginning of year</a></td>
<td class="nump">20,018<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_ContractWithCustomerLiability', window );">Balance at end of year</a></td>
<td class="nump">25,210<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="nump">3,397<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_tyl_ContractWithCustomerLiabilityRollForward', window );"><strong>Contract With Customer Liability [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Balance at beginning of year</a></td>
<td class="nump">3,397<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_ContractWithCustomerLiability', window );">Balance at end of year</a></td>
<td class="nump">$ 1,369<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_ContractWithCustomerLiabilityIncreaseFromDeferral">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contract With Customer, Liability, Increase From Deferral</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;">tyl_ContractWithCustomerLiabilityIncreaseFromDeferral</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_ContractWithCustomerLiabilityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contract With Customer Liability [Roll Forward]</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;">tyl_ContractWithCustomerLiabilityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 obligation to transfer good or service to customer for which consideration has been received or is 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 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 2: 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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a 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 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-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_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember</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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6843786128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Schedule of other information related to leases (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2019 </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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash outflows from operating leases</a></td>
<td class="nump">$ 7,267<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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Operating leases</a></td>
<td class="nump">$ 3,466<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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted average remaining lease term (years)</a></td>
<td class="text">4 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="nump">4.00%<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from operating lease, excluding payments to bring another asset to condition and location necessary for its intended 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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918643-209977<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)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=77888426&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=77888399&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>num: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=77888399&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=77888426&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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 right-of-use asset obtained in exchange for 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/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=77888399&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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>41
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822267904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefit Plans - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Percentage of employee contribution</a></td>
<td class="nump">30.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanCostRecognized', window );">Defined contribution plan, cost recognized</a></td>
<td class="nump">$ 11.5<span></span>
</td>
<td class="nump">$ 9.3<span></span>
</td>
<td class="nump">$ 7.9<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanDisclosureLineItems', window );"><strong>Defined Benefit Plan Disclosure [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Percentage of employer contribution</a></td>
<td class="nump">3.00%<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_DefinedBenefitPlanDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanCostRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for defined contribution 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 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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanCostRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage employer matches of the employee's percentage contribution matched.</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_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum percentage of employee gross pay the employee may contribute 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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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>42
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817321920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">EARNINGS PER SHARE</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">EARNINGS PER SHARE</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Numerator for basic and diluted earnings per share:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,527</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>147,462</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>169,571</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator:</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted-average basic common shares outstanding</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,640</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,445</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,273</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Assumed conversion of dilutive securities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock options</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,465</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,678</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,973</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator for diluted earnings per share</span></div><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,105</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,123</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,246</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per common share:</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.79</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.84</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.55</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.65</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.68</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.32</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span style="font-family:inherit;font-size:10pt;">Share-based awards representing the right to purchase common stock of </span><span style="font-family:inherit;font-size:10pt;"><span>633,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>888,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>1,343,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares in </span><span style="font-family:inherit;font-size:10pt;">2017</span> were not included in the computation of diluted earnings per share because their inclusion would have had an anti-dilutive effect.<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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>43
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "tyl12312019-10k.htm": {
   "axisCustom": 0,
   "axisStandard": 26,
   "contextCount": 360,
   "dts": {
    "calculationLink": {
     "local": [
      "tyl-20191231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tyl-20191231_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml",
      "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "tyl12312019-10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "tyl-20191231_lab.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml",
      "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tyl-20191231_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "tyl-20191231.xsd"
     ],
     "remote": [
      "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd",
      "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/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd",
      "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd",
      "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd",
      "https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd",
      "http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd",
      "http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd",
      "http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd",
      "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-parts-codification-2019-01-31.xsd"
     ]
    }
   },
   "elementCount": 603,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2019-01-31": 27,
    "http://www.tylertech.com/20191231": 9,
    "http://xbrl.sec.gov/dei/2019-01-31": 5,
    "total": 41
   },
   "keyCustom": 29,
   "keyStandard": 422,
   "memberCustom": 34,
   "memberStandard": 41,
   "nsprefix": "tyl",
   "nsuri": "http://www.tylertech.com/20191231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0001000 - Document - Cover",
     "role": "http://www.tylertech.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2104100 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets",
     "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2105100 - Disclosure - ACCRUED LIABILITIES",
     "role": "http://www.tylertech.com/role/AccruedLiabilities",
     "shortName": "ACCRUED LIABILITIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2106100 - Disclosure - Revolving Line of Credit",
     "role": "http://www.tylertech.com/role/RevolvingLineOfCredit",
     "shortName": "Revolving Line of Credit",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2107100 - Disclosure - INCOME TAX",
     "role": "http://www.tylertech.com/role/IncomeTax",
     "shortName": "INCOME TAX",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2108100 - Disclosure - SHAREHOLDERS\u2019 EQUITY",
     "role": "http://www.tylertech.com/role/ShareholdersEquity",
     "shortName": "SHAREHOLDERS\u2019 EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2109100 - Disclosure - SHARE-BASED COMPENSATION",
     "role": "http://www.tylertech.com/role/ShareBasedCompensation",
     "shortName": "SHARE-BASED COMPENSATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2110100 - Disclosure - EARNINGS PER SHARE",
     "role": "http://www.tylertech.com/role/EarningsPerShare",
     "shortName": "EARNINGS PER SHARE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2111100 - Disclosure - LEASES",
     "role": "http://www.tylertech.com/role/Leases",
     "shortName": "LEASES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2112100 - Disclosure - EMPLOYEE BENEFIT PLANS",
     "role": "http://www.tylertech.com/role/EmployeeBenefitPlans",
     "shortName": "EMPLOYEE BENEFIT PLANS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2113100 - Disclosure - COMMITMENTS AND CONTINGENCIES",
     "role": "http://www.tylertech.com/role/CommitmentsAndContingencies",
     "shortName": "COMMITMENTS AND CONTINGENCIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001000 - Statement - Consolidated Statements of Comprehensive Income",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
     "shortName": "Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2114100 - Disclosure - SEGMENT AND RELATED INFORMATION",
     "role": "http://www.tylertech.com/role/SegmentAndRelatedInformation",
     "shortName": "SEGMENT AND RELATED INFORMATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2115100 - Disclosure - DISAGGREGATION OF REVENUE",
     "role": "http://www.tylertech.com/role/DisaggregationOfRevenue",
     "shortName": "DISAGGREGATION OF REVENUE",
     "subGroupType": "",
     "uniqueAnchor": null
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2116100 - Disclosure - DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS",
     "role": "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations",
     "shortName": "DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS",
     "subGroupType": "",
     "uniqueAnchor": null
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2117100 - Disclosure - DEFERRED COMMISSIONS",
     "role": "http://www.tylertech.com/role/DeferredCommissions",
     "shortName": "DEFERRED COMMISSIONS",
     "subGroupType": "",
     "uniqueAnchor": null
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2118100 - Disclosure - SUBSEQUENT EVENTS",
     "role": "http://www.tylertech.com/role/SubsequentEvents",
     "shortName": "SUBSEQUENT EVENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2119100 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited)",
     "role": "http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited",
     "shortName": "QUARTERLY FINANCIAL INFORMATION (unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2201201 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2301302 - Disclosure - Summary of Significant Accounting Policies (Tables)",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables",
     "shortName": "Summary of Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2302301 - Disclosure - Acquisitions (Tables)",
     "role": "http://www.tylertech.com/role/AcquisitionsTables",
     "shortName": "Acquisitions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2303301 - Disclosure - Property and Equipment, Net (Tables)",
     "role": "http://www.tylertech.com/role/PropertyAndEquipmentNetTables",
     "shortName": "Property and Equipment, Net (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002000 - Statement - Consolidated Balance Sheets",
     "role": "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2304301 - Disclosure - Goodwill and Other Intangible Assets (Tables)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables",
     "shortName": "Goodwill and Other Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2305301 - Disclosure - Accrued Liabilities (Tables)",
     "role": "http://www.tylertech.com/role/AccruedLiabilitiesTables",
     "shortName": "Accrued Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2307301 - Disclosure - Income Tax (Tables)",
     "role": "http://www.tylertech.com/role/IncomeTaxTables",
     "shortName": "Income Tax (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2308301 - Disclosure - Shareholders' Equity (Tables)",
     "role": "http://www.tylertech.com/role/ShareholdersEquityTables",
     "shortName": "Shareholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2309301 - Disclosure - Share-Based Compensation (Tables)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationTables",
     "shortName": "Share-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2310301 - Disclosure - Earnings Per Share (Tables)",
     "role": "http://www.tylertech.com/role/EarningsPerShareTables",
     "shortName": "Earnings Per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2311301 - Disclosure - Leases (Tables)",
     "role": "http://www.tylertech.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2314301 - Disclosure - Segment and Related Information (Tables)",
     "role": "http://www.tylertech.com/role/SegmentAndRelatedInformationTables",
     "shortName": "Segment and Related Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2315301 - Disclosure - Disaggregation of Revenue (Tables)",
     "role": "http://www.tylertech.com/role/DisaggregationOfRevenueTables",
     "shortName": "Disaggregation of Revenue (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2316301 - Disclosure - Deferred Revenue and Performance Obligations (Tables)",
     "role": "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables",
     "shortName": "Deferred Revenue and Performance Obligations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002501 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "role": "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2319301 - Disclosure - Quarterly Financial Information (unaudited) (Tables)",
     "role": "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables",
     "shortName": "Quarterly Financial Information (unaudited) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q2QTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2401403 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details)",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails",
     "shortName": "Summary of Significant Accounting Policies - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q2QTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2401404 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (Details)",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2401405 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details)",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402402 - Disclosure - Acquisitions - Narrative (Detail)",
     "role": "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
     "shortName": "Acquisitions - Narrative (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402403 - Disclosure - Acquisitions - Assets and Liabilities Acquired (Details)",
     "role": "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
     "shortName": "Acquisitions - Assets and Liabilities Acquired (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402404 - Disclosure - Acquisitions - Pro-forma Information (Details)",
     "role": "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails",
     "shortName": "Acquisitions - Pro-forma Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2403402 - Disclosure - Property and Equipment, Net - Summary of Property and Equipment, Net (Detail)",
     "role": "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail",
     "shortName": "Property and Equipment, Net - Summary of Property and Equipment, Net (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2403403 - Disclosure - Property and Equipment, Net - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail",
     "shortName": "Property and Equipment, Net - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404402 - Disclosure - Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail",
     "shortName": "Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003000 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404403 - Disclosure - Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail",
     "shortName": "Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404404 - Disclosure - Goodwill and Other Intangible Assets - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
     "shortName": "Goodwill and Other Intangible Assets - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404405 - Disclosure - Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
     "shortName": "Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404406 - Disclosure - Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)",
     "role": "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail",
     "shortName": "Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405402 - Disclosure - Accrued Liabilities - Summary of Accrued Liabilities (Detail)",
     "role": "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail",
     "shortName": "Accrued Liabilities - Summary of Accrued Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermLineOfCredit",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2406401 - Disclosure - Revolving Line of Credit - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail",
     "shortName": "Revolving Line of Credit - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "INF",
      "lang": null,
      "name": "tyl:NumberofOutstandingLetterofCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "letters_of_credit",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407402 - Disclosure - Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail)",
     "role": "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail",
     "shortName": "Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407403 - Disclosure - Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail)",
     "role": "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail",
     "shortName": "Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407404 - Disclosure - Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail)",
     "role": "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail",
     "shortName": "Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:TaxCreditCarryforwardAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407405 - Disclosure - Income Tax - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail",
     "shortName": "Income Tax - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:TaxCreditCarryforwardAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004000 - Statement - Consolidated Statements of Shareholders' Equity",
     "role": "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
     "shortName": "Consolidated Statements of Shareholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2408402 - Disclosure - Shareholders' Equity - Summary of Activities in Common Stock (Detail)",
     "role": "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail",
     "shortName": "Shareholders' Equity - Summary of Activities in Common Stock (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfStockholdersEquityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2408403 - Disclosure - Shareholders' Equity - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail",
     "shortName": "Shareholders' Equity - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409402 - Disclosure - Share-Based Compensation - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
     "shortName": "Share-Based Compensation - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409403 - Disclosure - Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail",
     "shortName": "Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409404 - Disclosure - Share-Based Compensation - RSU and PSU Activity (Details)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails",
     "shortName": "Share-Based Compensation - RSU and PSU Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409405 - Disclosure - Share-Based Compensation - Stock Option Activity (Detail)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail",
     "shortName": "Share-Based Compensation - Stock Option Activity (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409406 - Disclosure - Share-Based Compensation - Other Information Pertaining to Option Activity (Detail)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail",
     "shortName": "Share-Based Compensation - Other Information Pertaining to Option Activity (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409407 - Disclosure - Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail)",
     "role": "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail",
     "shortName": "Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2410402 - Disclosure - Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail)",
     "role": "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail",
     "shortName": "Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2410403 - Disclosure - Earnings Per Share - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail",
     "shortName": "Earnings Per Share - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2101100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "role": "http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411402 - Disclosure - Leases - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
     "shortName": "Leases - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411403 - Disclosure - Leases - Schedule of lease cost (Details)",
     "role": "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails",
     "shortName": "Leases - Schedule of lease cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411404 - Disclosure - Leases - Schedule of leases assets and liabilities (Details)",
     "role": "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails",
     "shortName": "Leases - Schedule of leases assets and liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411405 - Disclosure - Leases - Schedule of other information related to leases (Details)",
     "role": "http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails",
     "shortName": "Leases - Schedule of other information related to leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411406 - Disclosure - Leases - Maturity of lease liabilities (Details)",
     "role": "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails",
     "shortName": "Leases - Maturity of lease liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411407 - Disclosure - Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)",
     "role": "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail",
     "shortName": "Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411408 - Disclosure - Leases - Schedule of future minimum operating rental income (Details)",
     "role": "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails",
     "shortName": "Leases - Schedule of future minimum operating rental income (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2412401 - Disclosure - Employee Benefit Plans - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail",
     "shortName": "Employee Benefit Plans - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "tyl:NumberOfLegalProceedingsThatHaveMaterialEffect",
      "reportCount": 1,
      "unique": true,
      "unitRef": "legal_matter",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2413401 - Disclosure - Commitments and Contingencies - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
     "shortName": "Commitments and Contingencies - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "tyl:NumberOfLegalProceedingsThatHaveMaterialEffect",
      "reportCount": 1,
      "unique": true,
      "unitRef": "legal_matter",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "tyl:NumberOfBusinessUnits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business_unit",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414402 - Disclosure - Segment and Related Information - Additional Information (Detail)",
     "role": "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
     "shortName": "Segment and Related Information - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "tyl:NumberOfBusinessUnits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business_unit",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2102100 - Disclosure - ACQUISITIONS",
     "role": "http://www.tylertech.com/role/Acquisitions",
     "shortName": "ACQUISITIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414403 - Disclosure - Segment and Related Information - Schedule of Segment Revenues and Operations (Detail)",
     "role": "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail",
     "shortName": "Segment and Related Information - Schedule of Segment Revenues and Operations (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "tyl:SegmentReportingInformationCapitalExpenditures",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414404 - Disclosure - Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail)",
     "role": "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail",
     "shortName": "Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSoldAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2415402 - Disclosure - Disaggregation of Revenue (Details)",
     "role": "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
     "shortName": "Disaggregation of Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2416402 - Disclosure - Deferred Revenue and Performance Obligations - Deferred Revenue (Details)",
     "role": "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
     "shortName": "Deferred Revenue and Performance Obligations - Deferred Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2416403 - Disclosure - Deferred Revenue and Performance Obligations - Narrative (Details)",
     "role": "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails",
     "shortName": "Deferred Revenue and Performance Obligations - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-7",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2417401 - Disclosure - Deferred Commissions (Details)",
     "role": "http://www.tylertech.com/role/DeferredCommissionsDetails",
     "shortName": "Deferred Commissions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:CapitalizedContractCostNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2419402 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail)",
     "role": "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail",
     "shortName": "QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET",
     "role": "http://www.tylertech.com/role/PropertyAndEquipmentNet",
     "shortName": "PROPERTY AND EQUIPMENT, NET",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9999": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "tyl12312019-10k.htm",
      "contextRef": "I2019Q1Jan01",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "",
     "isDefault": "false",
     "longName": "Uncategorized Items - tyl12312019-10k.htm",
     "role": "http://xbrl.sec.gov/role/uncategorizedFacts",
     "shortName": "Uncategorized Items - tyl12312019-10k.htm",
     "subGroupType": "",
     "uniqueAnchor": null
    }
   },
   "segmentCount": 75,
   "tag": {
    "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",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover page."
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "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",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r411"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report",
        "terseLabel": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r410"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r408"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]",
        "terseLabel": "Documents Incorporated by Reference"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r412"
     ],
     "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",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]",
        "terseLabel": "Entity"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r412"
     ],
     "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",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r413"
     ],
     "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",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r412"
     ],
     "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",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r412"
     ],
     "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",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r412"
     ],
     "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",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "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",
        "terseLabel": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [],
     "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",
        "terseLabel": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]",
        "terseLabel": "Legal Entity"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r407"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r409"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r127",
      "r135"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items",
        "verboseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r139",
      "r219",
      "r224",
      "r398"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail",
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail",
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail",
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r137",
      "r219",
      "r222",
      "r395",
      "r396"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail",
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail",
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "verboseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail",
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail",
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r138",
      "r219",
      "r223",
      "r397",
      "r399",
      "r402"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_AccountingPoliciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accounting policies.",
        "label": "Accounting Policies [Line Items]",
        "terseLabel": "Accounting Policies [Line Items]"
       }
      }
     },
     "localname": "AccountingPoliciesLineItems",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_AccountingPoliciesTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accounting policies.",
        "label": "Accounting Policies [Table]",
        "terseLabel": "Accounting Policies [Table]"
       }
      }
     },
     "localname": "AccountingPoliciesTable",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_AccruedAcquisitionPurchasePrice": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accrued acquisition purchase price.",
        "label": "Accrued Acquisition Purchase Price",
        "terseLabel": "Accrued purchase price"
       }
      }
     },
     "localname": "AccruedAcquisitionPurchasePrice",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_AcquiredSoftwareMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Acquired Software [Member]",
        "label": "Acquired Software [Member]",
        "terseLabel": "Acquired software"
       }
      }
     },
     "localname": "AcquiredSoftwareMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_AmortizationofCustomerandTradeNamesIntangibleAssets": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amortization of Customer and Trade Names Intangible Assets",
        "label": "Amortization of Customer and Trade Names Intangible Assets",
        "terseLabel": "Amortization of customer and trade name intangibles"
       }
      }
     },
     "localname": "AmortizationofCustomerandTradeNamesIntangibleAssets",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_AppraisalAndTaxMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Appraisal and tax.",
        "label": "Appraisal And Tax [Member]",
        "terseLabel": "Appraisal and Tax"
       }
      }
     },
     "localname": "AppraisalAndTaxMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_AppraisalServicesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Appraisal Services [Member]",
        "label": "Appraisal Services [Member]",
        "terseLabel": "Appraisal services"
       }
      }
     },
     "localname": "AppraisalServicesMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_AssumedConversionofDilutiveSecuritiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Assumed Conversion of Dilutive Securities [Abstract]",
        "label": "Assumed Conversion of Dilutive Securities [Abstract]",
        "terseLabel": "Assumed conversion of dilutive securities:"
       }
      }
     },
     "localname": "AssumedConversionofDilutiveSecuritiesAbstract",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_BuildingAndLeaseholdImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Building and leasehold improvements.",
        "label": "Building And Leasehold Improvements [Member]",
        "terseLabel": "Building and leasehold improvements"
       }
      }
     },
     "localname": "BuildingAndLeaseholdImprovementsMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets",
        "terseLabel": "Tangible assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Capitalized Post Acquisition Software Development Costs",
        "label": "Capitalized Post Acquisition Software Development Costs",
        "terseLabel": "Capitalized post acquisition software development costs"
       }
      }
     },
     "localname": "CapitalizedPostAcquisitionSoftwareDevelopmentCosts",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_CaseloadPROLPMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "CaseloadPRO, LP [Member]",
        "label": "CaseloadPRO, LP [Member]",
        "terseLabel": "CaseloadPRO, LP"
       }
      }
     },
     "localname": "CaseloadPROLPMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_CivicLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Civic LLC [Member]",
        "label": "Civic LLC [Member]",
        "verboseLabel": "MyCivic"
       }
      }
     },
     "localname": "CivicLLCMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_ComputerEquipmentAndPurchasedSoftwareMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Computer equipment and purchased software.",
        "label": "Computer Equipment And Purchased Software [Member]",
        "terseLabel": "Computer equipment and purchased software"
       }
      }
     },
     "localname": "ComputerEquipmentAndPurchasedSoftwareMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_ContractWithCustomerLiabilityIncreaseFromDeferral": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contract With Customer, Liability, Increase From Deferral",
        "label": "Contract With Customer, Liability, Increase From Deferral",
        "terseLabel": "Deferral of revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityIncreaseFromDeferral",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_ContractWithCustomerLiabilityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contract With Customer Liability [Roll Forward]",
        "label": "Contract With Customer Liability [Roll Forward]",
        "terseLabel": "Contract With Customer Liability [Roll Forward]"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRollForward",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_CorporateAndEliminationsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Corporate And Eliminations [Member]",
        "label": "Corporate And Eliminations [Member]",
        "terseLabel": "Corporate and Elimination"
       }
      }
     },
     "localname": "CorporateAndEliminationsMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_CostMethodInvestmentOwnershipPercentage": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cost method investment ownership percentage.",
        "label": "Cost Method Investment Ownership Percentage",
        "terseLabel": "Investment percentage"
       }
      }
     },
     "localname": "CostMethodInvestmentOwnershipPercentage",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cost of software services maintenance and subscriptions.",
        "label": "Cost Of Software Services Maintenance And Subscriptions [Member]",
        "terseLabel": "Cost of software services, maintenance and subscriptions"
       }
      }
     },
     "localname": "CostOfSoftwareServicesMaintenanceAndSubscriptionsMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_CourthouseTechnologiesLtdMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Courthouse Technologies, Ltd [Member]",
        "label": "Courthouse Technologies, Ltd [Member]",
        "terseLabel": "Courthouse Technologies, Ltd"
       }
      }
     },
     "localname": "CourthouseTechnologiesLtdMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_CreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Credit Agreement.",
        "label": "Credit Agreement [Member]",
        "terseLabel": "Credit Agreement"
       }
      }
     },
     "localname": "CreditAgreementMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Deferred tax assets operating expenses not currently deductible.",
        "label": "Deferred Tax Assets Operating Expenses Not Currently Deductible",
        "terseLabel": "Operating expenses not currently deductible"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards",
        "label": "Deferred Tax Assets, Operating Loss And Tax Credit Carryforwards",
        "terseLabel": "Loss and credit carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_DenominatorAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Denominator [Abstract]",
        "label": "Denominator [Abstract]",
        "terseLabel": "Denominator:"
       }
      }
     },
     "localname": "DenominatorAbstract",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_DigitalHealthDepartmentInc.Member": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Digital Health Department, Inc. [Member]",
        "label": "Digital Health Department, Inc. [Member]",
        "terseLabel": "Digital Health Department, Inc."
       }
      }
     },
     "localname": "DigitalHealthDepartmentInc.Member",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_EnterpriseSoftwareMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Enterprise software.",
        "label": "Enterprise Software [Member]",
        "terseLabel": "Enterprise Software",
        "verboseLabel": "Enterprise Software"
       }
      }
     },
     "localname": "EnterpriseSoftwareMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_HardwareandOtherMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Hardware and Other [Member]",
        "label": "Hardware and Other [Member]",
        "terseLabel": "Hardware and other",
        "verboseLabel": "Hardware and other"
       }
      }
     },
     "localname": "HardwareandOtherMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_IncreaseDecreaseInOperatingLeaseLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Increase (Decrease) In Operating Lease Liabilities",
        "label": "Increase (Decrease) In Operating Lease Liabilities",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingLeaseLiabilities",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_LathamNewYorkMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Latham, New York [Member]",
        "label": "Latham, New York [Member]",
        "terseLabel": "Latham, New York"
       }
      }
     },
     "localname": "LathamNewYorkMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_MPHoldingsParentInc.dbaMicroPactMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "MP Holdings Parent, Inc. dba MicroPact [Member]",
        "label": "MP Holdings Parent, Inc. dba MicroPact [Member]",
        "terseLabel": "MicroPact"
       }
      }
     },
     "localname": "MPHoldingsParentInc.dbaMicroPactMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_MicroPactAndMyCivicMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "MicroPact And MyCivic [Member]",
        "label": "MicroPact And MyCivic [Member]",
        "terseLabel": "MicroPact And MyCivic"
       }
      }
     },
     "localname": "MicroPactAndMyCivicMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_Modria.comMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Modria.com [Member]",
        "label": "Modria.com [Member]",
        "terseLabel": "Modria.com"
       }
      }
     },
     "localname": "Modria.comMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_NonrecurringRevenueMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Non-recurring Revenue [Member]",
        "label": "Non-recurring Revenue [Member]",
        "terseLabel": "Non-recurring revenues"
       }
      }
     },
     "localname": "NonrecurringRevenueMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_NumberOfBusinessUnits": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of business units.",
        "label": "Number Of Business Units",
        "terseLabel": "Number of business units"
       }
      }
     },
     "localname": "NumberOfBusinessUnits",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "tyl_NumberOfLegalProceedingsThatHaveMaterialEffect": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of legal proceedings that have material effect.",
        "label": "Number Of Legal Proceedings That Have Material Effect",
        "terseLabel": "Number of material legal proceedings pending"
       }
      }
     },
     "localname": "NumberOfLegalProceedingsThatHaveMaterialEffect",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "tyl_NumberOfWhollyOwnedSubsidiaries": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number Of Wholly Owned Subsidiaries",
        "label": "Number Of Wholly Owned Subsidiaries",
        "terseLabel": "Number of wholly-owned subsidiaries"
       }
      }
     },
     "localname": "NumberOfWhollyOwnedSubsidiaries",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "tyl_NumberofOutstandingLetterofCredit": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of Outstanding Letter of Credit",
        "label": "Number of Outstanding Letter of Credit",
        "terseLabel": "Number of outstanding letter of credit"
       }
      }
     },
     "localname": "NumberofOutstandingLetterofCredit",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Numerator of Basic and Diluted Earnings Per Share [Abstract]",
        "label": "Numerator of Basic and Diluted Earnings Per Share [Abstract]",
        "terseLabel": "Numerator for basic and diluted earnings per share:"
       }
      }
     },
     "localname": "NumeratorofBasicandDilutedEarningsPerShareAbstract",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "tyl_OperatingLeaseRightOfUseAssetsNonCash": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Operating Lease Right Of Use Assets Non Cash",
        "label": "Operating Lease Right Of Use Assets Non Cash",
        "terseLabel": "Operating lease right-of-use assets - non cash"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetsNonCash",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_OperatingSegmentsAndCorporateNonSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Operating Segments And Corporate Non Segment [Member]",
        "label": "Operating Segments And Corporate Non Segment [Member]",
        "terseLabel": "Operating Segments And Corporate Non Segment"
       }
      }
     },
     "localname": "OperatingSegmentsAndCorporateNonSegmentMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_Radio1033LLCMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Radio 1033, LLC [Member]",
        "label": "Radio 1033, LLC [Member]",
        "terseLabel": "Radio 1033, LLC"
       }
      }
     },
     "localname": "Radio1033LLCMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RecordHoldingsPtyLimitedMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Record Holdings Pty Limited.",
        "label": "Record Holdings Pty Limited [Member]",
        "terseLabel": "Record Holdings Pty Limited"
       }
      }
     },
     "localname": "RecordHoldingsPtyLimitedMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RecurringRevenueMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Recurring Revenue [Member]",
        "label": "Recurring Revenue [Member]",
        "terseLabel": "Recurring revenues"
       }
      }
     },
     "localname": "RecurringRevenueMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RemainingEstimatedEconomicLife": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Remaining Estimated Economic Life",
        "label": "Remaining Estimated Economic Life",
        "terseLabel": "Remaining estimated economic life"
       }
      }
     },
     "localname": "RemainingEstimatedEconomicLife",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_RestrictedStockUnitandPerformanceStockUnitMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Restricted Stock Unit and Performance Stock Unit [Member]",
        "label": "Restricted Stock Unit and Performance Stock Unit [Member]",
        "terseLabel": "Restricted stock unit and performance stock unit"
       }
      }
     },
     "localname": "RestrictedStockUnitandPerformanceStockUnitMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RetentionReceivableMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Retention Receivable [Member]",
        "label": "Retention Receivable [Member]",
        "terseLabel": "Retention Receivable"
       }
      }
     },
     "localname": "RetentionReceivableMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_RevenueFromContractWithCustomerContractTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Contract Term",
        "label": "Revenue From Contract With Customer, Contract Term",
        "terseLabel": "Contract term"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerContractTerm",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_RevenueFromContractWithCustomerPaymentTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Payment Term",
        "label": "Revenue From Contract With Customer, Payment Term",
        "terseLabel": "Payment term"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPaymentTerm",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Percentage Withheld From Progress Billing",
        "label": "Revenue From Contract With Customer, Percentage Withheld From Progress Billing",
        "terseLabel": "Progress billing retention percentage"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tyl_RevenueFromContractWithCustomerTypicalContractTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Typical Contract Term",
        "label": "Revenue From Contract With Customer, Typical Contract Term",
        "terseLabel": "Typical contract term"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTypicalContractTerm",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_SageDataSecurityLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sage Data Security, LLC [Member]",
        "label": "Sage Data Security, LLC [Member]",
        "terseLabel": "Sage Data Security, LLC"
       }
      }
     },
     "localname": "SageDataSecurityLLCMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_SalesCommissionRenewalPeriod": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sales Commission, Renewal Period",
        "label": "Sales Commission, Renewal Period",
        "terseLabel": "Sales commission, renewal period"
       }
      }
     },
     "localname": "SalesCommissionRenewalPeriod",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_SalesCommissionsAmortizationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sales Commissions Amortization Period",
        "label": "Sales Commissions Amortization Period",
        "terseLabel": "Sales commissions amortization period"
       }
      }
     },
     "localname": "SalesCommissionsAmortizationPeriod",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tyl_SceneDoc.Inc.Member": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "SceneDoc. Inc. [Member]",
        "label": "SceneDoc. Inc. [Member]",
        "terseLabel": "SceneDoc. Inc"
       }
      }
     },
     "localname": "SceneDoc.Inc.Member",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule Of Leases Assets And Liabilities [Table Text Block]",
        "label": "Schedule Of Leases Assets And Liabilities [Table Text Block]",
        "terseLabel": "Schedule of leases assets and liabilities"
       }
      }
     },
     "localname": "ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule Of Supplemental Information Related To Leases [Table Text Block]",
        "label": "Schedule Of Supplemental Information Related To Leases [Table Text Block]",
        "terseLabel": "Schedule of supplemental information related to leases"
       }
      }
     },
     "localname": "ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "tyl_SegmentReportingInformationCapitalExpenditures": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Segment reporting information, capital expenditures.",
        "label": "Segment Reporting Information Capital Expenditures",
        "terseLabel": "Capital expenditures"
       }
      }
     },
     "localname": "SegmentReportingInformationCapitalExpenditures",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based compensation arrangement by share-based payment award, fair value assumptions, expected forfeiture rate.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Forfeiture Rate",
        "terseLabel": "Expected forfeiture rate (in percentage)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share based compensation arrangement by share based payment award options nonvested weighted average exercise price.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Nonvested Weighted Average Exercise Price",
        "terseLabel": "Weighted average grant date value (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other than Options, Vested In Period, Net Of Withheld Shares Upon Award Settlement",
        "label": "Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other than Options, Vested In Period, Net Of Withheld Shares Upon Award Settlement",
        "terseLabel": "Restricted stock units vested, net of withheld shares upon award settlement, Shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "tyl_SocrataInc.Member": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Socrata, Inc. [Member]",
        "label": "Socrata, Inc. [Member]",
        "terseLabel": "Socrata, Inc."
       }
      }
     },
     "localname": "SocrataInc.Member",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_SoftwareAcquiredMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Software acquired.",
        "label": "Software Acquired [Member]",
        "terseLabel": "Acquired software",
        "verboseLabel": "Acquired software"
       }
      }
     },
     "localname": "SoftwareAcquiredMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_SoftwareLicensesandRoyaltiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Software Licenses and Royalties [Member]",
        "label": "Software Licenses and Royalties [Member]",
        "terseLabel": "Software licenses and royalties"
       }
      }
     },
     "localname": "SoftwareLicensesandRoyaltiesMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_SoftwareServicesMaintenanceandSubscriptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Software Services, Maintenance and Subscriptions [Member]",
        "label": "Software Services, Maintenance and Subscriptions [Member]",
        "terseLabel": "Software services, maintenance and subscriptions"
       }
      }
     },
     "localname": "SoftwareServicesMaintenanceandSubscriptionsMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock Issued During Period, Value, Restricted Stock Units Vested, Net Of Withheld Shares Upon Award Settlement",
        "label": "Stock Issued During Period, Value, Restricted Stock Units Vested, Net Of Withheld Shares Upon Award Settlement",
        "terseLabel": "Restricted stock units vested, net of withheld shares upon award settlement"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Subscription And Circulation - SaaS Arrangements Services [Member]",
        "label": "Subscription And Circulation - SaaS Arrangements Services [Member]",
        "terseLabel": "SaaS arrangements services"
       }
      }
     },
     "localname": "SubscriptionAndCirculationSaaSArrangementsServicesMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)",
        "label": "Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)",
        "negatedLabel": "Tax Act tax benefit",
        "terseLabel": "Tax Act adjustments"
       }
      }
     },
     "localname": "TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tyl_TradeMasterInc.Member": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "TradeMaster Inc. [Member]",
        "label": "TradeMaster Inc. [Member]",
        "terseLabel": "TradeMaster Inc."
       }
      }
     },
     "localname": "TradeMasterInc.Member",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "tyl_YarmouthMaineMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Yarmouth, Maine [Member]",
        "label": "Yarmouth, Maine [Member]",
        "terseLabel": "Yarmouth, Maine"
       }
      }
     },
     "localname": "YarmouthMaineMember",
     "nsuri": "http://www.tylertech.com/20191231",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingStandardsUpdate201602Member": {
     "auth_ref": [
      "r343"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accounting Standards Update 2016-02 Leases (Topic 842).",
        "label": "Accounting Standards Update 2016-02 [Member]",
        "terseLabel": "Accounting Standards Update 2016-02"
       }
      }
     },
     "localname": "AccountingStandardsUpdate201602Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": {
     "auth_ref": [
      "r47"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of receivable.",
        "label": "Receivable Type [Axis]",
        "terseLabel": "Receivable Type [Axis]"
       }
      }
     },
     "localname": "AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis": {
     "auth_ref": [
      "r47"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by billing status of receivables.",
        "label": "Billing Status, Type [Axis]",
        "terseLabel": "Billing Status, Type [Axis]"
       }
      }
     },
     "localname": "AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r36"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.",
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "terseLabel": "ACCRUED LIABILITIES"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AccruedLiabilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r23",
      "r385"
     ],
     "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.",
        "label": "Accounts Receivable, after Allowance for Credit Loss",
        "terseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "AccountsReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r3",
      "r23",
      "r141",
      "r142",
      "r220"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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 Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable (less allowance for losses and sales adjustments of $5,738 in 2019 and $4,647 in 2018)"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetNoncurrent": {
     "auth_ref": [
      "r23",
      "r141",
      "r220",
      "r376",
      "r385"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "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 noncurrent.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Noncurrent",
        "terseLabel": "Accounts receivable, long-term"
       }
      }
     },
     "localname": "AccountsReceivableNetNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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 Liabilities, Current",
        "terseLabel": "Accrued liabilities",
        "totalLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail",
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accrued Liabilities, Current [Abstract]"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r34",
      "r182"
     ],
     "calculation": {
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail": {
       "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 and amortization"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r51",
      "r52",
      "r53"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive loss, net of tax"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r50",
      "r53",
      "r54",
      "r330"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": {
     "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": "Acquired Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Acquired Finite Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Weighted average useful life (in years)",
        "verboseLabel": "Amortizable intangibles, Weighted Average Amortization Period"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r24"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 2.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, Common Stock",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [],
     "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 Capital [Member]",
        "terseLabel": "Additional Paid-in Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r98"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by new accounting pronouncement.",
        "label": "Adjustments for New Accounting Pronouncements [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Decrease for Tax Withholding Obligation",
        "negatedTerseLabel": "Employee taxes paid for withheld shares for taxes upon equity award"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r236",
      "r238",
      "r275",
      "r276"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Stock compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to cash provided by operations:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r238",
      "r269",
      "r274"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax",
       "weight": 1.0
      }
     },
     "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",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after tax, of expense for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Expense, after Tax",
        "totalLabel": "Net decrease (increase) in net income"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpenseNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "auth_ref": [
      "r143",
      "r147",
      "r148",
      "r151"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable.",
        "label": "Accounts Receivable, Allowance for Credit Loss",
        "periodEndLabel": "Balance at end of year",
        "periodStartLabel": "Balance at beginning of year"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r29",
      "r143",
      "r147"
     ],
     "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",
        "terseLabel": "Accounts receivable, allowance for losses",
        "verboseLabel": "Accounts receivable, allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": {
     "auth_ref": [
      "r150"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Recovery",
        "negatedTerseLabel": "Collection of accounts previously written off"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]",
        "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRollforward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r82",
      "r165",
      "r173"
     ],
     "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 of Intangible Assets",
        "negatedLabel": "Amortization of customer and trade name intangibles",
        "verboseLabel": "Total amortization expense"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r108"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Antidilutive securities excluded from computation of earnings per share, amount"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r130",
      "r368",
      "r387"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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": "Assets",
        "terseLabel": "Total assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS",
        "verboseLabel": "Assets:"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r5",
      "r7",
      "r49"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r240",
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails",
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r314",
      "r315"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "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": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic",
        "terseLabel": "Basic earnings per share (usd per share)"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted",
        "terseLabel": "Diluted earnings per share (usd per share)"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Schedule of pro forma information"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Net Income (Loss)",
        "terseLabel": "Net income"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaNetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaRevenue": {
     "auth_ref": [
      "r312",
      "r313"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.",
        "label": "Business Acquisition, Pro Forma Revenue",
        "terseLabel": "Revenues"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r310"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.",
        "label": "Business Combination, Acquisition Related Costs",
        "verboseLabel": "Acquisition related fees"
       }
      }
     },
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r322",
      "r323",
      "r325"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "terseLabel": "Total purchase price to acquire business"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiability": {
     "auth_ref": [
      "r321",
      "r324",
      "r327"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination.",
        "label": "Business Combination, Contingent Consideration, Liability",
        "terseLabel": "Contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r328"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "ACQUISITIONS"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Acquisitions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual": {
     "auth_ref": [
      "r311"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents the amount of earnings or loss of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.",
        "label": "Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual",
        "terseLabel": "Loss of acquiree, actual"
       }
      }
     },
     "localname": "BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": {
     "auth_ref": [
      "r311"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.",
        "label": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual",
        "terseLabel": "Revenue of acquiree, actual"
       }
      }
     },
     "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred": {
     "auth_ref": [
      "r318"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to items of consideration transferred in connection with a business combination for which the initial accounting was incomplete.",
        "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred",
        "terseLabel": "Business acquisition consideration adjustment"
       }
      }
     },
     "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "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, acquired at the acquisition date. 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.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash",
        "verboseLabel": "Net cash acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "negatedTerseLabel": "Accounts payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 10.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred revenue expected to be recognized as such within one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Deferred Revenue",
        "negatedTerseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other",
        "negatedTerseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r284",
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 11.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities",
        "negatedLabel": "Deferred tax liabilities, net",
        "negatedTerseLabel": "Deferred tax liabilities, net"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "terseLabel": "Identifiable intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": {
     "auth_ref": [
      "r316"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities",
        "terseLabel": "Liabilities assumed"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 9.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other",
        "negatedTerseLabel": "Other noncurrent liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets",
        "terseLabel": "Other noncurrent assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "totalLabel": "Total consideration"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r88",
      "r309"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "terseLabel": "Contingent Purchase Consideration"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareAmortization1": {
     "auth_ref": [
      "r404",
      "r406"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for amortization of capitalized computer software costs.",
        "label": "Capitalized Computer Software, Amortization",
        "terseLabel": "Amortization of software development costs"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareAmortization1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostAmortization": {
     "auth_ref": [
      "r155"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "Capitalized Contract Cost, Amortization",
        "terseLabel": "Deferred commissions amortization"
       }
      }
     },
     "localname": "CapitalizedContractCostAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostLineItems": {
     "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": "Capitalized Contract Cost [Line Items]",
        "terseLabel": "Capitalized Contract Cost [Line Items]"
       }
      }
     },
     "localname": "CapitalizedContractCostLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalizedContractCostNet": {
     "auth_ref": [
      "r154"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "Capitalized Contract Cost, Net",
        "terseLabel": "Deferred commissions"
       }
      }
     },
     "localname": "CapitalizedContractCostNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about cost capitalized in obtaining or fulfilling contract with customer.",
        "label": "Capitalized Contract Cost [Table]",
        "terseLabel": "Capitalized Contract Cost [Table]"
       }
      }
     },
     "localname": "CapitalizedContractCostTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r2",
      "r31",
      "r84"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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 and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r11",
      "r85",
      "r88"
     ],
     "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, Policy [Policy Text Block]",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r78",
      "r84",
      "r87"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. 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": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r78",
      "r336"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]",
        "terseLabel": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockLineItems": {
     "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": "Class of Stock [Line Items]",
        "terseLabel": "Class Of Stock [Line Items]"
       }
      }
     },
     "localname": "ClassOfStockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r43",
      "r192",
      "r377",
      "r391"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "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",
        "terseLabel": "Commitments and contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r191",
      "r193"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "COMMITMENTS AND CONTINGENCIES"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r22"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r22"
     ],
     "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",
        "terseLabel": "Common stock, shares authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r22"
     ],
     "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",
        "terseLabel": "Common stock, shares issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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, Value, Issued",
        "terseLabel": "Common stock, $0.01 par value; 100,000,000 shares authorized; 48,147,969 shares issued in 2019 and 2018"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock": {
     "auth_ref": [
      "r227",
      "r228",
      "r235"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure of an entity's employee compensation and benefit plans, excluding share-based compensation and including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, life insurance, severance, health care, unemployment and other benefit plans.",
        "label": "Compensation and Employee Benefit Plans, Other than Share-based Compensation [Text Block]",
        "terseLabel": "EMPLOYEE BENEFIT PLANS"
       }
      }
     },
     "localname": "CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r120",
      "r381"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "terseLabel": "Concentrations of Credit Risk"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r88",
      "r329",
      "r331",
      "r332"
     ],
     "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": "Consolidation, Policy [Policy Text Block]",
        "terseLabel": "Principles of Consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r215"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of contract balances and changes in contract balances.",
        "label": "Contract with Customer, Asset and Liability [Table Text Block]",
        "terseLabel": "Changes in deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r213",
      "r214",
      "r220"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "periodEndLabel": "Balance at end of year",
        "periodStartLabel": "Balance at beginning of year",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r213",
      "r214",
      "r220"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Liability, Current",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "auth_ref": [
      "r213",
      "r214",
      "r220"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.",
        "label": "Contract with Customer, Liability, Noncurrent",
        "terseLabel": "Deferred revenue, long-term"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r221"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "negatedTerseLabel": "Recognition of deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertiblePreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Preferred stock that may be exchanged into common shares or other types of securities at the owner's option.",
        "label": "Convertible Preferred Stock [Member]",
        "terseLabel": "Convertible Preferred Stock"
       }
      }
     },
     "localname": "ConvertiblePreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r136"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.",
        "label": "Corporate, Non-Segment [Member]",
        "terseLabel": "Corporate"
       }
      }
     },
     "localname": "CorporateNonSegmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r64"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "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 and Services Sold",
        "terseLabel": "Total cost of revenues"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSoldAmortization": {
     "auth_ref": [
      "r62"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service.",
        "label": "Cost, Amortization",
        "negatedLabel": "Amortization of acquired software"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSoldAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Cost of Revenue [Abstract]",
        "terseLabel": "Cost of revenues:"
       }
      }
     },
     "localname": "CostOfRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]",
        "terseLabel": "Credit Facility"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) to equity or (increase) decrease to net assets, resulting from the cumulative effect adjustment of a new accounting principle applied in the period of adoption.",
        "label": "Cumulative Effect of New Accounting Principle in Period of Adoption",
        "terseLabel": "Retained earnings adjustment-adoption of Topic 842 Leases, net of taxes"
       }
      }
     },
     "localname": "CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r91",
      "r302",
      "r305"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Federal Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r91",
      "r302",
      "r305"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail": {
       "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)",
        "totalLabel": "Current income tax expense benefit"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r91",
      "r302",
      "r305"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerRelatedIntangibleAssetsMember": {
     "auth_ref": [
      "r319"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Customer-related asset, including, but not limited to, customer lists, and noncontractual customer relationships.",
        "label": "Customer-Related Intangible Assets [Member]",
        "terseLabel": "Customer related intangibles",
        "verboseLabel": "Customer related intangibles"
       }
      }
     },
     "localname": "CustomerRelatedIntangibleAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r198"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "terseLabel": "REVOLVING LINE OF CREDIT"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCredit"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r14",
      "r16",
      "r17",
      "r369",
      "r371",
      "r384"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "terseLabel": "Line of credit facility interest rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "auth_ref": [
      "r41",
      "r197",
      "r337"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.",
        "label": "Debt Instrument, Interest Rate, Effective Percentage",
        "terseLabel": "Debt instrument, interest rate, effective percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Debt instrument, interest rate, stated percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r42"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument Name"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r82",
      "r91",
      "r303",
      "r305"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "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 Tax Expense (Benefit)",
        "terseLabel": "Deferred income tax benefit",
        "verboseLabel": "Deferred"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r18",
      "r19",
      "r292",
      "r370",
      "r383"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "negatedTotalLabel": "Total deferred income tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r293"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "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 and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Total deferred income tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r294"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "totalLabel": "Total deferred income tax assets, net of valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits": {
     "auth_ref": [
      "r280",
      "r300",
      "r301"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from employee benefits, classified as other.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Benefits",
        "terseLabel": "Stock option and other employee benefit plans"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r295"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "negatedTerseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r285",
      "r296"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "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": "Net deferred income tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets": {
     "auth_ref": [
      "r281",
      "r300",
      "r301"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets including goodwill.",
        "label": "Deferred Tax Liabilities, Goodwill and Intangible Assets",
        "negatedLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses.",
        "label": "Deferred Tax Liabilities, Prepaid Expenses",
        "negatedTerseLabel": "Prepaid expenses"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPrepaidExpenses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r281",
      "r300",
      "r301"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "negatedLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome": {
     "auth_ref": [
      "r281",
      "r300",
      "r301"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from tax deferred revenue or income classified as other.",
        "label": "Deferred Tax Liabilities, Tax Deferred Income",
        "negatedTerseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesTaxDeferredIncome",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "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": "Defined Benefit Plan Disclosure [Line Items]",
        "terseLabel": "Defined Benefit Plan Disclosure [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedContributionPlanCostRecognized": {
     "auth_ref": [
      "r234"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost for defined contribution plan.",
        "label": "Defined Contribution Plan, Cost",
        "terseLabel": "Defined contribution plan, cost recognized"
       }
      }
     },
     "localname": "DefinedContributionPlanCostRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage employer matches of the employee's percentage contribution matched.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match",
        "terseLabel": "Percentage of employer contribution"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent",
        "terseLabel": "Percentage of employee contribution"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r82",
      "r180"
     ],
     "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",
        "terseLabel": "Depreciation expense"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r82",
      "r128"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization",
        "terseLabel": "Depreciation and amortization",
        "verboseLabel": "Depreciation and amortization expense"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "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": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r219"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Schedule of disaggregation of revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r278"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement [Text Block]",
        "terseLabel": "SHARE-BASED COMPENSATION"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": {
     "auth_ref": [
      "r240",
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of share-based payment arrangement.",
        "label": "Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block]",
        "terseLabel": "Summarizes Restricted Stock Unit and Performance Share Activity"
       }
      }
     },
     "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Earnings per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r60",
      "r99",
      "r103",
      "r105",
      "r106",
      "r107",
      "r110",
      "r380",
      "r393"
     ],
     "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 Share, Basic",
        "terseLabel": "Basic (USD per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share, Basic and Diluted [Abstract]",
        "terseLabel": "Earnings per common share:"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r60",
      "r99",
      "r103",
      "r105",
      "r106",
      "r107",
      "r110",
      "r380",
      "r393"
     ],
     "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 Share, Diluted",
        "terseLabel": "Diluted (USD per share)",
        "verboseLabel": "Earnings per diluted share (USD per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r111"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "EARNINGS PER SHARE"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount": {
     "auth_ref": [
      "r277",
      "r286"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-based Payment Arrangement, Amount",
        "terseLabel": "Excess tax benefits related to stock option exercises"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail": {
       "order": 1.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",
        "terseLabel": "Accrued wages, bonuses and commissions"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "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": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]",
        "terseLabel": "Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for 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 Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Weighted average amortization period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "auth_ref": [
      "r270"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount",
        "terseLabel": "Total unrecognized compensation cost"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "auth_ref": [
      "r269"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Expense, Tax Benefit",
        "negatedLabel": "Excess tax benefit"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock.",
        "label": "Employee Stock [Member]",
        "terseLabel": "Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "EmployeeStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r267"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-based Payment Arrangement, Option [Member]",
        "terseLabel": "Stock Option Plan"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r202"
     ],
     "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 [Domain]",
        "terseLabel": "Equity Component"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue": {
     "auth_ref": [
      "r334"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI) and investment in equity security without readily determinable fair value.",
        "label": "Equity Securities, FV-NI and without Readily Determinable Fair Value",
        "terseLabel": "Cost method investment"
       }
      }
     },
     "localname": "EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount": {
     "auth_ref": [
      "r146"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of impairment loss on investment in equity security without readily determinable fair value.",
        "label": "Equity Securities without Readily Determinable Fair Value, Impairment Loss, Annual Amount",
        "terseLabel": "Cost-method investment impairment"
       }
      }
     },
     "localname": "EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r88",
      "r333",
      "r335"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "terseLabel": "Fair Value of Financial Instruments"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail": {
       "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": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedLabel": "Accumulated amortization",
        "terseLabel": "Amortizable intangibles, Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five",
        "terseLabel": "Thereafter",
        "verboseLabel": "Amortization expense, thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months",
        "terseLabel": "2020",
        "verboseLabel": "Amortization expense, 2020"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five",
        "terseLabel": "2024",
        "verboseLabel": "Amortization expense, 2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "2023",
        "verboseLabel": "Amortization expense, 2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three",
        "terseLabel": "2022",
        "verboseLabel": "Amortization expense, 2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two",
        "terseLabel": "2021",
        "verboseLabel": "Amortization expense, 2021"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r166",
      "r168",
      "r172",
      "r175",
      "r366"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r172",
      "r366"
     ],
     "calculation": {
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail": {
       "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": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Acquisition intangibles, gross",
        "verboseLabel": "Amortizable intangibles, Gross carrying amount"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "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": "Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r166",
      "r171"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite Lived Intangible Assets Major Class Name"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]",
        "terseLabel": "Furniture and fixtures"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r156",
      "r158"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.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": "Goodwill Ending Balance",
        "periodStartLabel": "Goodwill Beginning Balance",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r159"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "verboseLabel": "Goodwill acquired"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r177"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "GOODWILL AND OTHER INTANGIBLE ASSETS"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r88",
      "r161",
      "r169"
     ],
     "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": "Goodwill and Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Goodwill and Other Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r82",
      "r157",
      "r160",
      "r162"
     ],
     "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": "Goodwill, Impairment Loss",
        "terseLabel": "Goodwill impairment"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillLineItems": {
     "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": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [Line Items]"
       }
      }
     },
     "localname": "GoodwillLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Goodwill [Roll Forward]",
        "terseLabel": "Goodwill [Roll Forward]"
       }
      }
     },
     "localname": "GoodwillRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "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",
        "terseLabel": "Gross profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies": {
     "auth_ref": [
      "r88",
      "r194"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for guarantees, indemnifications and product warranties, and methodologies used in determining the amount of such liabilities.",
        "label": "Guarantees, Indemnifications and Warranties Policies [Policy Text Block]",
        "terseLabel": "Indemnification"
       }
      }
     },
     "localname": "GuaranteesIndemnificationsAndWarrantiesPolicies",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r82",
      "r176"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value.",
        "label": "Impairment of Intangible Assets (Excluding Goodwill)",
        "terseLabel": "Impairments of intangible assets"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r82",
      "r179",
      "r184",
      "r401"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).",
        "label": "Impairment of Long-Lived Assets Held-for-use",
        "terseLabel": "Impairments of long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r88",
      "r178",
      "r187"
     ],
     "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": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "terseLabel": "Impairment of Long-Lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r58",
      "r99",
      "r367",
      "r378",
      "r394"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "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 (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r95"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.",
        "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest",
        "terseLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r185"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r308"
     ],
     "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": "Income Tax Disclosure [Text Block]",
        "terseLabel": "INCOME TAX"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTax"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r91",
      "r129",
      "r306"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Income Tax Expense (Benefit)",
        "totalLabel": "Income tax expense benefit",
        "verboseLabel": "Income tax provision (benefit)"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail",
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r57",
      "r88",
      "r282",
      "r283",
      "r290",
      "r291",
      "r297",
      "r307",
      "r400"
     ],
     "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 Tax, Policy [Policy Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReceivable": {
     "auth_ref": [
      "r30",
      "r382"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of income taxes previously overpaid to tax authorities (such as U.S. Federal, state and local tax authorities) representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. Also called income tax refund receivable.",
        "label": "Income Taxes Receivable",
        "terseLabel": "Income tax receivable"
       }
      }
     },
     "localname": "IncomeTaxReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities": {
     "auth_ref": [
      "r286",
      "r287"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": 3.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": "Domestic production activities deduction"
       }
      }
     },
     "localname": "IncomeTaxReconciliationDeductionsQualifiedProductionActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r90",
      "r286",
      "r287"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "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",
        "terseLabel": "Federal income tax expense at statutory rate"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpense": {
     "auth_ref": [
      "r286",
      "r287"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": 7.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 nondeductible expenses.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount",
        "terseLabel": "Non-deductible business expenses"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r286"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "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",
        "terseLabel": "Other, net"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r90",
      "r286",
      "r287"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "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",
        "terseLabel": "State income tax, net of federal income tax benefit"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCredits": {
     "auth_ref": [
      "r286",
      "r287"
     ],
     "calculation": {
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail": {
       "order": 6.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 expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Amount",
        "negatedTerseLabel": "Tax credits"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r86"
     ],
     "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, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Income taxes, net of refunds"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 8.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": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.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": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 9.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": "Increase (Decrease) in Accrued Liabilities",
        "terseLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Contract with Customer, Liability",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.",
        "label": "Increase (Decrease) in Income Taxes Receivable",
        "negatedLabel": "Income tax receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInIncomeTaxesReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities, exclusive of effects of acquired companies:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 7.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": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r104",
      "r109"
     ],
     "calculation": {
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements",
        "terseLabel": "Stock options (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r164",
      "r170"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Other intangibles, net",
        "totalLabel": "Total other intangibles, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r77",
      "r79",
      "r86"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Interest paid"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntersegmentEliminationMember": {
     "auth_ref": [
      "r133"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Eliminating entries used in operating segment consolidation.",
        "label": "Intersegment Eliminations [Member]",
        "terseLabel": "Intercompany"
       }
      }
     },
     "localname": "IntersegmentEliminationMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InvestmentsAndOtherNoncurrentAssets": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investments, and noncurrent assets classified as other.",
        "label": "Investments and Other Noncurrent Assets",
        "terseLabel": "Non-current investments and other assets"
       }
      }
     },
     "localname": "InvestmentsAndOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r356",
      "r358"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "terseLabel": "Operating lease, cost",
        "totalLabel": "Net lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail",
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r356"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Schedule of lease cost"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeasesAcquiredInPlaceMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents the amount of value allocated by a lessor (acquirer) to lease agreements which exist at acquisition of a leased property. Such amount may include the value assigned to tenant relationships and excludes the market adjustment component of the value assigned for above or below-market leases acquired.",
        "label": "Leases, Acquired-in-Place [Member]",
        "terseLabel": "Leases acquired",
        "verboseLabel": "Leases acquired"
       }
      }
     },
     "localname": "LeasesAcquiredInPlaceMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r347"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee.",
        "label": "Lessee, Leases [Policy Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r357"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Schedule of operating lease maturity"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due",
        "totalLabel": "Total lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease having an initial or remaining lease term in excess of one year due in remainder of fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year",
        "terseLabel": "2020"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r357"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "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",
        "negatedTerseLabel": "Less: Interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r348"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Lessee, Operating Lease, Renewal Term",
        "terseLabel": "Operating lease renewal term (up to)"
       }
      }
     },
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "auth_ref": [
      "r348"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Lessee, Operating Lease, Term of Contract",
        "terseLabel": "Operating lease term"
       }
      }
     },
     "localname": "LesseeOperatingLeaseTermOfContract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r359"
     ],
     "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": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "LEASES"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceived": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor for operating lease.",
        "label": "Lessor, Operating Lease, Payments to be Received",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceived",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedFiveYears": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in fifth fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Five Years",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedFiveYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedFourYears": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in fourth year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Four Years",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedFourYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in remainder of fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Remainder of Fiscal Year",
        "terseLabel": "2020"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedThereafter": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor after fifth fiscal year following latest statement of financial position date for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Thereafter",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedThereafter",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedThreeYears": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in third fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Three Years",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedThreeYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedTwoYears": {
     "auth_ref": [
      "r360"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in second fiscal year following latest fiscal year for operating lease. Excludes interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Two Years",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedTwoYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r361"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Term of lessor's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Lessor, Operating Lease, Renewal Term",
        "terseLabel": "Lessor, operating lease renewal term"
       }
      }
     },
     "localname": "LessorOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LetterOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit).",
        "label": "Letter of Credit [Member]",
        "terseLabel": "Letter of Credit"
       }
      }
     },
     "localname": "LetterOfCreditMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities [Abstract]",
        "terseLabel": "Liabilities:"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r28",
      "r372",
      "r389"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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": "Liabilities and Equity",
        "totalLabel": "Liabilities and Shareholders' equity, Total"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND SHAREHOLDERS' EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "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": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LicenseMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Right to use intangible asset. Intangible asset includes, but is not limited to, patent, copyright, technology, manufacturing process, software or trademark.",
        "label": "License [Member]",
        "terseLabel": "Software licenses and royalties"
       }
      }
     },
     "localname": "LicenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "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": "Line of Credit Facility [Line Items]",
        "terseLabel": "Line Of Credit Facility [Line Items]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r37"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Revolving credit facility, maximum borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r37"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).",
        "label": "Line of Credit Facility, Remaining Borrowing Capacity",
        "terseLabel": "Line of credit facility, unused borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r37",
      "r93"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.",
        "label": "Line of Credit Facility [Table]",
        "terseLabel": "Line Of Credit Facility [Table]"
       }
      }
     },
     "localname": "LineOfCreditFacilityTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LondonInterbankOfferedRateLIBORMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "London Interbank Offered Rate (LIBOR) [Member]",
        "terseLabel": "LIBOR Rate"
       }
      }
     },
     "localname": "LondonInterbankOfferedRateLIBORMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermLineOfCredit": {
     "auth_ref": [
      "r42",
      "r195",
      "r196"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Long-term Line of Credit, Noncurrent",
        "terseLabel": "Revolving line of credit",
        "verboseLabel": "Outstanding borrowings"
       }
      }
     },
     "localname": "LongTermLineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MaintenanceMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Process of preserving asset, including, but not limited to, building, machinery and software.",
        "label": "Maintenance [Member]",
        "terseLabel": "Maintenance"
       }
      }
     },
     "localname": "MaintenanceMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MaterialReconcilingItemsMember": {
     "auth_ref": [
      "r133",
      "r134"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Items used in reconciling reportable segments' amounts to consolidated amount. Excludes corporate-level activity.",
        "label": "Segment Reconciling Items [Member]",
        "terseLabel": "Segment Reconciling Items"
       }
      }
     },
     "localname": "MaterialReconcilingItemsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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 Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash provided (used) by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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 Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used by investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r78",
      "r80",
      "r83"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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 (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r55",
      "r56",
      "r59",
      "r83",
      "r109",
      "r379",
      "r392"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net income",
        "totalLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": {
     "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": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]",
        "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": {
     "auth_ref": [
      "r98",
      "r100"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Summarization of the changes in an accounting principle or a new accounting pronouncement, including the line items affected by the change and the financial effects of the change on those particular line items.",
        "label": "New Accounting Pronouncements or Change in Accounting Principle [Table]",
        "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Table]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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 [Policy Text Block]",
        "terseLabel": "Recently Adopted Accounting Pronouncements and New Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "Number of Reportable Segments",
        "terseLabel": "Number of reportable segment"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "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 (Loss)",
        "terseLabel": "Total segment operating income",
        "totalLabel": "Operating income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r349",
      "r358"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "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",
        "terseLabel": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLeaseIncomeTableTextBlock": {
     "auth_ref": [
      "r115",
      "r362"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of components of income from operating lease.",
        "label": "Operating Lease, Lease Income [Table Text Block]",
        "terseLabel": "Schedule of future minimum operating rental income"
       }
      }
     },
     "localname": "OperatingLeaseLeaseIncomeTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r345"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc2": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "terseLabel": "Present value of operating lease liabilities",
        "totalLabel": "Total lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails",
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r345"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "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 current.",
        "label": "Operating Lease, Liability, Current",
        "negatedLabel": "Operating lease liabilities",
        "terseLabel": "Operating leases, short-term",
        "verboseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r345"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "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": "Operating Lease, Liability, Noncurrent",
        "negatedLabel": "Operating lease liabilities, long-term",
        "terseLabel": "Operating leases, long-term",
        "verboseLabel": "Operating lease liabilities, long-term"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r346",
      "r352"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Operating cash outflows from operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease right-of-use assets",
        "verboseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r355",
      "r358"
     ],
     "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",
        "terseLabel": "Weighted average discount rate"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r354",
      "r358"
     ],
     "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",
        "terseLabel": "Weighted average remaining lease term (years)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasedAssetsLineItems": {
     "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": "Operating Leased Assets [Line Items]",
        "terseLabel": "Operating Leased Assets [Line Items]"
       }
      }
     },
     "localname": "OperatingLeasedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDue": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year.",
        "label": "Operating Leases, Future Minimum Payments Due",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments Due, Next Twelve Months",
        "terseLabel": "2019"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments, Due in Five Years",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInFiveYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments, Due in Four Years",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInFourYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments, Due in Three Years",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInThreeYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments, Due in Two Years",
        "terseLabel": "2020"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInTwoYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter": {
     "auth_ref": [
      "r338",
      "r341"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail": {
       "order": 6.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Operating Leases, Future Minimum Payments, Due Thereafter",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueThereafter",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesOfLessorDisclosureTextBlock": {
     "auth_ref": [
      "r339",
      "r340",
      "r363"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for lessor's operating leases.",
        "label": "Lessor, Operating Leases [Text Block]",
        "terseLabel": "LEASES"
       }
      }
     },
     "localname": "OperatingLeasesOfLessorDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r298"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating Loss Carryforwards",
        "terseLabel": "Operating loss carryforwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "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": "Operating Loss Carryforwards [Line Items]",
        "terseLabel": "Operating Loss Carryforwards [Line Items]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r299"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Operating Loss Carryforwards [Table]",
        "terseLabel": "Operating Loss Carryforwards [Table]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r127",
      "r135"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Operating Segments [Member]",
        "terseLabel": "Operating segments"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r8",
      "r9",
      "r10",
      "r39"
     ],
     "calculation": {
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail": {
       "order": 2.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 Accrued Liabilities, Current",
        "terseLabel": "Other accrued liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other Assets, Current",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other Assets, Noncurrent [Abstract]",
        "terseLabel": "Other assets:"
       }
      }
     },
     "localname": "OtherAssetsNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r67"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 2.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 Nonoperating Income (Expense)",
        "terseLabel": "Other income, net",
        "verboseLabel": "Other income (expense), net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForCapitalImprovements": {
     "auth_ref": [
      "r72"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow for acquisition of or capital improvements to properties held for investment (operating, managed, leased) or for use.",
        "label": "Payments for Capital Improvements",
        "terseLabel": "Payment for construction to expand building"
       }
      }
     },
     "localname": "PaymentsForCapitalImprovements",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "auth_ref": [
      "r69",
      "r73",
      "r96"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other.",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "negatedLabel": "(Increase) decrease in other"
       }
      }
     },
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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": "Payments for Repurchase of Common Stock",
        "negatedLabel": "Purchase of treasury shares"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForSoftware": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the development, modification or acquisition of software programs or applications for internal use (that is, not to be sold, leased or otherwise marketed to others) that qualify for capitalization.",
        "label": "Payments for Software",
        "negatedTerseLabel": "Capitalized software development costs"
       }
      }
     },
     "localname": "PaymentsForSoftware",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBuildings": {
     "auth_ref": [
      "r72"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow for acquisition of buildings (properties) whether for investment or use.",
        "label": "Payments to Acquire Buildings",
        "terseLabel": "Payment to acquire building"
       }
      }
     },
     "localname": "PaymentsToAcquireBuildings",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r71",
      "r326"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.",
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Cash to acquire business"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedLabel": "Cost of acquisitions, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": {
     "auth_ref": [
      "r70",
      "r145"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow through purchase of long-term held-to-maturity securities.",
        "label": "Payments to Acquire Held-to-maturity Securities",
        "terseLabel": "Purchase of held to maturity securities"
       }
      }
     },
     "localname": "PaymentsToAcquireHeldToMaturitySecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireMarketableSecurities": {
     "auth_ref": [
      "r145"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for purchase of marketable security.",
        "label": "Payments to Acquire Marketable Securities",
        "negatedLabel": "Purchase of marketable security investments"
       }
      }
     },
     "localname": "PaymentsToAcquireMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "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": "Payments to Acquire Property, Plant, and Equipment",
        "negatedTerseLabel": "Additions to property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PostemploymentBenefitsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Postemployment Benefits [Abstract]"
       }
      }
     },
     "localname": "PostemploymentBenefitsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred stock, $10.00 par value; 1,000,000 shares authorized; none issued"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r4",
      "r6",
      "r153"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense, Current",
        "terseLabel": "Prepaid expenses"
       }
      }
     },
     "localname": "PrepaidExpenseCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.",
        "label": "Prime Rate [Member]",
        "terseLabel": "Prime Commercial Lending Rate"
       }
      }
     },
     "localname": "PrimeRateMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r0"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassifications that affects the comparability of the financial statements.",
        "label": "Reclassification, Policy [Policy Text Block]",
        "terseLabel": "Reclassifications"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities": {
     "auth_ref": [],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities  (held-to-maturity or available-for-sale) during the period.",
        "label": "Proceeds from Sale and Maturity of Marketable Securities",
        "terseLabel": "Proceeds from marketable security investments"
       }
      }
     },
     "localname": "ProceedsFromSaleAndMaturityOfMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r74",
      "r272"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "Proceeds from Stock Options Exercised",
        "terseLabel": "Proceeds from exercise of stock options"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockPlans": {
     "auth_ref": [
      "r74"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the stock plan during the period.",
        "label": "Proceeds from Stock Plans",
        "verboseLabel": "Contributions from employee stock purchase plan"
       }
      }
     },
     "localname": "ProceedsFromStockPlans",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Article or substance produced by nature, labor or machinery.",
        "label": "Product [Member]",
        "terseLabel": "Hardware and other"
       }
      }
     },
     "localname": "ProductMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r34",
      "r183"
     ],
     "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": "Property, Plant and Equipment, Type [Axis]",
        "terseLabel": "Property Plant And Equipment By Type"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r188"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, accounting policies and methodology, roll forwards, depreciation, depletion and amortization expense, including composite depreciation, accumulated depreciation, depletion and amortization expense, useful lives and method used, income statement disclosures, assets held for sale and public utility disclosures.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "PROPERTY AND EQUIPMENT, NET"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNet"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r33",
      "r181"
     ],
     "calculation": {
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail": {
       "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",
        "terseLabel": "Property and equipment, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "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": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r12",
      "r13",
      "r183",
      "r390"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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, Plant and Equipment, Net",
        "terseLabel": "Property and equipment, net",
        "totalLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r32",
      "r88",
      "r183"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, basis of assets, depreciation and depletion methods used, including composite deprecation, estimated useful lives, capitalization policy, accounting treatment for costs incurred for repairs and maintenance, capitalized interest and the method it is calculated, disposals and impairments.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property and Equipment, Net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r12",
      "r183"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Summary of Property and Equipment, Net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r12",
      "r181"
     ],
     "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": "Property, Plant and Equipment, Type [Domain]",
        "terseLabel": "Property Plant And Equipment Type"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "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",
        "terseLabel": "Property and equipment, Useful lives"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r61",
      "r149"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.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": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "netLabel": "Provisions for losses and sales adjustments - accounts receivable",
        "terseLabel": "Provision for losses and sales adjustments - accounts receivable"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_QuarterlyFinancialInformationDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Quarterly Financial Information Disclosure [Abstract]"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "auth_ref": [
      "r117"
     ],
     "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": "Quarterly Financial Information [Text Block]",
        "terseLabel": "QUARTERLY FINANCIAL INFORMATION (unaudited)"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReceivableTypeDomain": {
     "auth_ref": [
      "r47"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Financing arrangement representing a contractual right to receive money either on demand or on fixed and determinable dates.",
        "label": "Receivable [Domain]",
        "terseLabel": "Receivable [Domain]"
       }
      }
     },
     "localname": "ReceivableTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReceivablesBillingStatusDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amounts due from customers (or dealers) within the next year (or operating cycle, if longer) for goods or services that have been delivered or used, but not yet paid.",
        "label": "Receivables Billing Status [Domain]",
        "terseLabel": "Receivables Billing Status [Domain]"
       }
      }
     },
     "localname": "ReceivablesBillingStatusDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable": {
     "auth_ref": [
      "r132",
      "r134"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about the reconciliation of profit (loss) from reportable segments to the consolidated income (loss) before income tax expense (benefit) and discontinued operations. Includes, but is not limited to, reconciliation after income tax if income tax is allocated to the reportable segment.",
        "label": "Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table]",
        "terseLabel": "Reconciliation Of Operating Profit Loss From Segments To Consolidated [Table]"
       }
      }
     },
     "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r132",
      "r134"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation of profit (loss) from reportable segments to the consolidated income (loss) before income tax expense (benefit) and discontinued operations. Includes, but is not limited to, reconciliation after income tax if income tax is allocated to the reportable segment.",
        "label": "Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block]",
        "terseLabel": "Reconciliation of Operating Income from Segments to Consolidated"
       }
      }
     },
     "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RentalIncomeNonoperating": {
     "auth_ref": [
      "r66"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Income earned by providing the use of assets to an outside party in exchange for a payment or series of payments that is nonoperating in nature.",
        "label": "Rental Income, Nonoperating",
        "verboseLabel": "Rental income"
       }
      }
     },
     "localname": "RentalIncomeNonoperating",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r76",
      "r94"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.",
        "label": "Repayments of Lines of Credit",
        "negatedTerseLabel": "Decrease in net borrowings on revolving line of credit"
       }
      }
     },
     "localname": "RepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r88",
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has 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.",
        "label": "Research and Development Expense, Policy [Policy Text Block]",
        "terseLabel": "Research and Development Costs"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost": {
     "auth_ref": [
      "r403"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Research and development expense during the period related to the costs of developing and achieving technological feasibility of a computer software product to be sold, leased, or otherwise marketed.",
        "label": "Research and Development Expense, Software (Excluding Acquired in Process Cost)",
        "terseLabel": "Research and development expense"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted Stock Units (RSUs)"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r25",
      "r209",
      "r388"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "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 (Accumulated Deficit)",
        "negatedTerseLabel": "Retained earnings",
        "terseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r218",
      "r219"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "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": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "netLabel": "Revenues",
        "terseLabel": "Total revenues"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r89",
      "r226"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "terseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r226"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "netLabel": "DEFERRED COMMISSIONS",
        "terseLabel": "DISAGGREGATION OF REVENUE",
        "verboseLabel": "DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredCommissions",
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations",
      "http://www.tylertech.com/role/DisaggregationOfRevenue"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r216"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Remaining performance obligations"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": {
     "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": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r217"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Expected timing of satisfaction period"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r217"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in CCYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationPercentage": {
     "auth_ref": [
      "r217"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Percentage",
        "terseLabel": "Revenue, remaining performance obligation, percentage"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_RevenuesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenues [Abstract]",
        "terseLabel": "Revenues:"
       }
      }
     },
     "localname": "RevenuesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Credit Facility"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r353",
      "r358"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "terseLabel": "Operating leases"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.",
        "label": "Sale of Stock [Domain]",
        "terseLabel": "Sale Of Stock Name Of Transaction"
       }
      }
     },
     "localname": "SaleOfStockNameOfTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r47"
     ],
     "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, Notes, Loans and Financing Receivable [Table Text Block]",
        "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "terseLabel": "Summary of Accrued Liabilities"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AccruedLiabilitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable": {
     "auth_ref": [
      "r166"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the major classes of acquired finite-lived intangible assets showing the amount, any significant residual value, weighted average amortization period, and other characteristics. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]",
        "terseLabel": "Schedule Of Acquired Finite Lived Intangible Asset By Major Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": {
     "auth_ref": [
      "r166"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]",
        "terseLabel": "Summary of Allocation of Acquisition Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r314",
      "r315"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule Of Business Acquisitions By Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails",
      "http://www.tylertech.com/role/AcquisitionsNarrativeDetail",
      "http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r304"
     ],
     "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) [Table Text Block]",
        "terseLabel": "Income Tax Provision (Benefit) on Income from Operations"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r296"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Schedule of Deferred Tax Assets and Liabilities"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r229",
      "r230",
      "r231",
      "r232",
      "r233"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans.  Also includes schedule for fair value of plan assets by major categories of plan assets by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table]",
        "terseLabel": "Schedule Of Defined Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r109"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Computation of Basic Earnings and Diluted Earnings Per Share Data"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r286"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Expense Rate"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r238",
      "r268",
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "terseLabel": "Schedule Of Employee Service Share Based Compensation Allocation Of Recognized Period Costs [Table]"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r238",
      "r268",
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Summary of Share-Based Compensation Expense Related to Share-Based Awards"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r166",
      "r171"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule Of Finite Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r166",
      "r171"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Summary of Other Intangible Assets and Related Accumulated Amortization"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock": {
     "auth_ref": [
      "r342"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases as of the balance sheet date.",
        "label": "Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block]",
        "terseLabel": "Schedule of future minimum lease commitments related to lease agreements under Topic 840"
       }
      }
     },
     "localname": "ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r161",
      "r163"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.",
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule Of Goodwill [Table]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r161",
      "r163"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill [Table Text Block]",
        "terseLabel": "Summary of Changes in Carrying Amount of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r98",
      "r100",
      "r112",
      "r113",
      "r116"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.",
        "label": "Schedule of New Accounting Pronouncements and Changes in Accounting Principles [Table Text Block]",
        "terseLabel": "Schedule of New Accounting Pronouncements and Changes in Accounting Principles"
       }
      }
     },
     "localname": "ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfOperatingLeasedAssetsTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of long-lived, depreciable assets that are subject to a operating lease agreements and are used in the normal conduct of business to produce goods and services. Examples may 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": "Schedule of Operating Leased Assets [Table]",
        "terseLabel": "Schedule Of Operating Leased Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfOperatingLeasedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r34",
      "r183"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about 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 [Table]",
        "terseLabel": "Schedule Of Property Plant And Equipment [Table]",
        "verboseLabel": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail",
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "auth_ref": [
      "r114"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Schedule of Quarterly Financial Information"
       }
      }
     },
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r317"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Schedule of the allocation of the purchase price as of the acquisition date"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r126",
      "r130",
      "r131",
      "r133",
      "r161"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "terseLabel": "Schedule Of Segment Reporting Information By Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r126",
      "r130",
      "r131",
      "r133",
      "r161"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "terseLabel": "Schedule of Segment Revenues and Operations"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r240",
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails",
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r246",
      "r257",
      "r260"
     ],
     "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": "Share-based Payment Arrangement, Option, Activity [Table Text Block]",
        "terseLabel": "Stock Option Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r262"
     ],
     "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 [Table Text Block]",
        "terseLabel": "Summary of Weighted Average Assumptions Used for Options Granted"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r44",
      "r92",
      "r199",
      "r200",
      "r201",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity.",
        "label": "Schedule of Stock by Class [Table]",
        "terseLabel": "Schedule Of Stock By Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfStockByClassTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityTableTextBlock": {
     "auth_ref": [
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of changes in the separate accounts comprising stockholders' equity (in addition to retained earnings) and of the changes in the number of shares of equity securities during at least the most recent annual fiscal period and any subsequent interim period presented is required to make the financial statements sufficiently informative if both financial position and results of operations are presented.",
        "label": "Schedule of Stockholders Equity [Table Text Block]",
        "terseLabel": "Summary of Activities in Common Stock"
       }
      }
     },
     "localname": "ScheduleOfStockholdersEquityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]",
        "terseLabel": "Summary of Estimated Annual Amortization Expense"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Segments [Domain]",
        "verboseLabel": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r140"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "SEGMENT AND RELATED INFORMATION"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "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": "Segment Reporting Information [Line Items]",
        "terseLabel": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems": {
     "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": "Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]",
        "terseLabel": "Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r65",
      "r152"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general and administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [
      "r68"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, general and administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": {
     "auth_ref": [
      "r315"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the aggregation and reporting of combined amounts of individually immaterial business combinations that were completed during the period.",
        "label": "Series of Individually Immaterial Business Acquisitions [Member]",
        "terseLabel": "Other acquisitions"
       }
      }
     },
     "localname": "SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.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": "Share-based Payment Arrangement, Noncash Expense",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r241"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period",
        "terseLabel": "Vesting period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r252"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited, shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue": {
     "auth_ref": [
      "r256"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award forfeited under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Intrinsic Value, Amount Per Share",
        "terseLabel": "Forfeited (dollar per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r254"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Granted, shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue": {
     "auth_ref": [
      "r254"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award granted under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Intrinsic Value, Amount Per Share",
        "terseLabel": "Granted (dollar per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue": {
     "auth_ref": [
      "r253"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instrument Other than Option, Nonvested, Intrinsic Value",
        "periodEndLabel": "Ending balance (dollar per share)",
        "periodStartLabel": "Beginning balance (dollar per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Intrinsic Value, Amount Per Share [Abstract]",
        "terseLabel": "Weighted Average Grant Date Fair Value per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r253"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Ending balance, shares",
        "periodStartLabel": "Beginning balance, shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Number of Shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedTerseLabel": "Vested, shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average intrinsic value of award vested under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Intrinsic Value, Amount Per Share",
        "terseLabel": "Vested (dollar per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "terseLabel": "Dividend yield (in percentage)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r266"
     ],
     "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",
        "terseLabel": "Risk-free interest rate (in percentage)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate": {
     "auth_ref": [
      "r264"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rate of weighted-average expected volatility for award under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Weighted Average Volatility Rate",
        "terseLabel": "Expected volatility (in percentage)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "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": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails",
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The highest percentage of annual salary that an employee is permitted to utilize with respect to the plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Rate",
        "terseLabel": "Percentage of annual compensation participants may contribute"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r243"
     ],
     "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",
        "terseLabel": "Shares reserved for future issuance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Number of shares available for grant"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r249"
     ],
     "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",
        "terseLabel": "Exercisable (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r249"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Exercisable (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r259"
     ],
     "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",
        "terseLabel": "Total intrinsic value of stock options exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r252"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period",
        "negatedLabel": "Forfeited (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "auth_ref": [
      "r250"
     ],
     "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",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r258"
     ],
     "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",
        "terseLabel": "Weighted average grant-date fair value of stock options granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r271"
     ],
     "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",
        "terseLabel": "Aggregate Intrinsic Value, Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r248",
      "r271"
     ],
     "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",
        "periodEndLabel": "Outstanding Ending Balance (in shares)",
        "periodStartLabel": "Outstanding Beginning Balance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r247"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Outstanding Ending Balance (in dollars per share)",
        "periodStartLabel": "Outstanding Beginning Balance (in dollar per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r237",
      "r244"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails",
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price",
        "terseLabel": "Forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r88",
      "r240",
      "r245"
     ],
     "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": "Share-based Payment Arrangement [Policy Text Block]",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period",
        "terseLabel": "Contractual term"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r263",
      "r273"
     ],
     "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",
        "terseLabel": "Expected life (in years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r271"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value",
        "terseLabel": "Aggregate Intrinsic Value, Exercisable"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "terseLabel": "Weighted Average Remaining Contractual Life (Years), Exercisable"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of non-vested options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares",
        "terseLabel": "Unvested options to purchase (in shares)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Weighted Average Remaining Contractual Life (Years), Outstanding"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Purchase price of common stock expressed as a percentage of its fair value.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent",
        "terseLabel": "Purchase price as a percentage of closing price on the last day of the quarter for ESPP transactions"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharesIssued": {
     "auth_ref": [
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury.",
        "label": "Shares, Issued",
        "periodEndLabel": "Balance, shares",
        "periodStartLabel": "Balance, shares"
       }
      }
     },
     "localname": "SharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "negatedTerseLabel": "Employee taxes paid for withheld shares for taxes upon equity award, shares"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "auth_ref": [
      "r38"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of short-term debt arrangement.",
        "label": "Short-term Debt, Type [Axis]",
        "terseLabel": "Short Term Debt Type"
       }
      }
     },
     "localname": "ShortTermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "auth_ref": [
      "r35"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing.",
        "label": "Short-term Debt, Type [Domain]",
        "terseLabel": "Short Term Debt Type"
       }
      }
     },
     "localname": "ShortTermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermInvestments": {
     "auth_ref": [
      "r15",
      "r373",
      "r374",
      "r375",
      "r386"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.",
        "label": "Short-term Investments",
        "terseLabel": "Short-term investments"
       }
      }
     },
     "localname": "ShortTermInvestments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r350",
      "r358"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-term Lease, Cost",
        "terseLabel": "Short-term lease cost"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r97"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SoftwareDevelopmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Internally developed software for sale, licensing or long-term internal use.",
        "label": "Software Development [Member]",
        "terseLabel": "Capitalized software development costs"
       }
      }
     },
     "localname": "SoftwareDevelopmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy": {
     "auth_ref": [
      "r88",
      "r405"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs incurred to (1) establish the technological feasibility of a computer software product to be sold, leased, or otherwise marketed; and (2) produce product masters after establishing technological feasibility. This accounting policy also may apply to purchased computer software. This policy also may address the entity's amortization policy for its capitalized computer software costs and how it evaluates such capitalized costs for impairment.",
        "label": "Software to be Sold, Leased, or Otherwise Marketed, Policy [Policy Text Block]",
        "terseLabel": "Costs of Computer Software"
       }
      }
     },
     "localname": "SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]",
        "terseLabel": "State"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r1",
      "r130",
      "r161",
      "r186",
      "r189",
      "r190",
      "r395"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "verboseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r20",
      "r21",
      "r22",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]",
        "terseLabel": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r46",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Statement Equity Components"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "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]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [],
     "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 [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r21",
      "r22",
      "r202",
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.",
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Issuance of shares pursuant to employee stock purchase plan, shares",
        "verboseLabel": "Employee stock plan purchases, Shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r21",
      "r22",
      "r202",
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture",
        "terseLabel": "Issuance of shares pursuant to stock compensation plan, shares",
        "verboseLabel": "Stock option exercises, Shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r21",
      "r22",
      "r202",
      "r209",
      "r251"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "auth_ref": [
      "r21",
      "r22",
      "r202",
      "r209"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.",
        "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan",
        "terseLabel": "Issuance of shares pursuant to employee stock purchase plan",
        "verboseLabel": "Employee stock plan purchases"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r21",
      "r22",
      "r209",
      "r239",
      "r258"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture",
        "terseLabel": "Issuance of shares pursuant to stock compensation plan"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares authorized to be repurchased by an entity's Board of Directors under a stock repurchase plan.",
        "label": "Stock Repurchase Program, Number of Shares Authorized to be Repurchased",
        "terseLabel": "Number of shares authorized to be repurchased, shares"
       }
      }
     },
     "localname": "StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r22",
      "r26",
      "r27",
      "r144"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 6.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": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total shareholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets",
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Shareholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r212"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "SHAREHOLDERS\u2019 EQUITY"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubscriptionAndCirculationMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Right to receive or access periodic material for specified period of time.",
        "label": "Subscription and Circulation [Member]",
        "terseLabel": "Subscriptions"
       }
      }
     },
     "localname": "SubscriptionAndCirculationMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r364"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r364"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r365"
     ],
     "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": "Subsequent Events [Text Block]",
        "terseLabel": "SUBSEQUENT EVENTS"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of sale of the entity's stock.",
        "label": "Sale of Stock [Axis]",
        "terseLabel": "Subsidiary Sale Of Stock"
       }
      }
     },
     "localname": "SubsidiarySaleOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCreditCarryforwardAmount": {
     "auth_ref": [
      "r298"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Tax Credit Carryforward, Amount",
        "terseLabel": "Tax credit carryforwards"
       }
      }
     },
     "localname": "TaxCreditCarryforwardAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TechnologyServiceMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Technology assistance, including but not limited to, training, installation, engineering, and software design.",
        "label": "Technology Service [Member]",
        "terseLabel": "Software services"
       }
      }
     },
     "localname": "TechnologyServiceMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome",
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails",
      "http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceAxis": {
     "auth_ref": [
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by timing of transfer of good or service to customer.",
        "label": "Timing of Transfer of Good or Service [Axis]",
        "terseLabel": "Timing of Transfer of Good or Service [Axis]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time.",
        "label": "Timing of Transfer of Good or Service [Domain]",
        "terseLabel": "Timing of Transfer of Good or Service [Domain]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]",
        "terseLabel": "Trade names",
        "verboseLabel": "Trade names"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail",
      "http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredAtPointInTimeMember": {
     "auth_ref": [
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred at point in time.",
        "label": "Transferred at Point in Time [Member]",
        "terseLabel": "Products and services transferred at a point in time"
       }
      }
     },
     "localname": "TransferredAtPointInTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredOverTimeMember": {
     "auth_ref": [
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred over time.",
        "label": "Transferred over Time [Member]",
        "terseLabel": "Products and services transferred over time"
       }
      }
     },
     "localname": "TransferredOverTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/DisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransportationEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equipment used for the primary purpose of moving people and products from one place to another.",
        "label": "Transportation Equipment [Member]",
        "terseLabel": "Transportation equipment"
       }
      }
     },
     "localname": "TransportationEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r45",
      "r210"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]",
        "terseLabel": "Treasury Stock"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r45",
      "r210"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.",
        "label": "Treasury Stock, Shares",
        "terseLabel": "Treasury stock, shares"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r22",
      "r202",
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.",
        "label": "Treasury Stock, Shares, Acquired",
        "negatedLabel": "Treasury stock purchases, shares",
        "negatedTerseLabel": "Purchases of common stock, Shares"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r45",
      "r210",
      "r211"
     ],
     "calculation": {
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.",
        "label": "Treasury Stock, Value",
        "negatedLabel": "Treasury stock, at cost; 8,839,352 and 9,872,505 shares in 2019 and 2018, respectively"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "auth_ref": [
      "r202",
      "r209",
      "r210"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "negatedLabel": "Treasury stock purchases",
        "negatedTerseLabel": "Purchases of common stock"
       }
      }
     },
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity",
      "http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adoption and early adoption of sources of change to generally accepted accounting principles (GAAP) in the United States. The FASB released the FASB Accounting Standards Codification as the authoritative source of literature effective for interim and annual periods ending after September 15, 2009. As part of the Codification process, the FASB issues Accounting Standards Updates to amend the Codification but otherwise the Accounting Standards Updates are not authoritative in their own right. All previous accounting standards (such as FASB Statements of Financial Accounting Standards, FASB Interpretations, FASB Staff Positions, Emerging Issues Task Force Consensuses, other pronouncements of the FASB or other designated bodies, or other forms of GAAP are considered accounting pronouncements) were superseded upon the adoption of the Codification. For an interim period, references to the superseded standards are included to help users transition from the previous accounting hierarchy and will be removed from future versions of this taxonomy.",
        "label": "Type of Adoption [Domain]",
        "terseLabel": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnbilledRevenuesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Unbilled amounts due for services rendered or products shipped. This element is distinct from unbilled contracts receivables because this is based on noncontract transactions.",
        "label": "Unbilled Revenues [Member]",
        "terseLabel": "Unbilled Revenues"
       }
      }
     },
     "localname": "UnbilledRevenuesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsPeriodIncreaseDecrease": {
     "auth_ref": [
      "r289"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in unrecognized tax benefits attributable to uncertain tax positions taken in tax returns.",
        "label": "Unrecognized Tax Benefits, Period Increase (Decrease)",
        "terseLabel": "Increase of liability for an uncertain tax position"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r118",
      "r119",
      "r121",
      "r122",
      "r123",
      "r124",
      "r125"
     ],
     "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, Policy [Policy Text Block]",
        "terseLabel": "Use of Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r351",
      "r358"
     ],
     "calculation": {
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable lease cost"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r102",
      "r107"
     ],
     "calculation": {
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail": {
       "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": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Shares used in computing diluted earnings per share",
        "totalLabel": "Denominator for diluted earnings per share - Adjusted weighted-average shares"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail",
      "http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "terseLabel": "Number of Shares"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r101",
      "r107"
     ],
     "calculation": {
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail": {
       "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",
        "terseLabel": "Weighted-average basic common shares outstanding"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 9
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=6359566&loc=d3e326-107755"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e7018-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22583-107794"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1448-109256"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1505-109256"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1252-109256"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1500-109256"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=SL5780133-109256"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r11": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117327953&loc=d3e4984-109258"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=116846552&loc=d3e725-108305"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=116846552&loc=d3e765-108305"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=118952077&loc=d3e1280-108306"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=118952077&loc=SL77927221-108306"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.10-01.(b)(6))",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=27015980&loc=d3e46468-122699"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "270",
   "URI": "http://asc.fasb.org/topic&trid=2126967"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8721-108599"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r13": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8813-108599"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8924-108599"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8475-108599"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9031-108599"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4428-111522"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4531-111522"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5074-111524"
  },
  "r144": {
   "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=27010918&loc=d3e74512-122707"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118954083&loc=d3e26853-111562"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=116654751&loc=SL75117539-209714"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955202&loc=SL82895884-210446"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=68048583&loc=d3e3636-108311"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=68074540&loc=d3e5879-108316"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=68051541&loc=SL49131252-203054"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=68051541&loc=SL49131252-203054"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r16": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r178": {
   "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"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226348&loc=d3e2420-110228"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r187": {
   "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"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14326-108349"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=99376301&loc=d3e1314-112600"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=99376301&loc=d3e1336-112600"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6036836-161870"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(CFRR 211.02)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=d3e177068-122764"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=65888546&loc=d3e21300-112643"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21553-112644"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21484-112644"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21488-112644"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21521-112644"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21538-112644"
  },
  "r209": {
   "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=27012166&loc=d3e187085-122770"
  },
  "r21": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045"
  },
  "r22": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "710",
   "URI": "http://asc.fasb.org/topic&trid=2127225"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "http://asc.fasb.org/topic&trid=2197446"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r23": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2410-114920"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2417-114920"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e2439-114920"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921"
  },
  "r234": {
   "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"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116855982&loc=d3e4534-113899"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r24": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r248": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r249": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r25": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r250": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r251": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r26": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r263": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r264": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r265": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r266": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r269": {
   "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=116856206&loc=d3e5070-113901"
  },
  "r27": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=SL79508275-113901"
  },
  "r273": {
   "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=115993241&loc=d3e301413-122809"
  },
  "r274": {
   "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=115993241&loc=d3e301413-122809"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11149-113907"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11178-113907"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=117330312&loc=d3e23163-113944"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r279": {
   "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"
  },
  "r28": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32247-109318"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32280-109318"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31917-109318"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31931-109318"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32687-109319"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32698-109319"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r29": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32809-109319"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32840-109319"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32847-109319"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r30": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32621-109319"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32632-109319"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r305": {
   "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=116825942&loc=d3e330036-122817"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "30",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=65884525&loc=d3e40913-109327"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457"
  },
  "r31": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868678&loc=d3e1043-128460"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=SL65897772-128472"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5227-128473"
  },
  "r32": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r329": {
   "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"
  },
  "r33": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-02)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355033-122828"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-03)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355100-122828"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=99377092&loc=SL75136599-209740"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13279-108611"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28551-108399"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(Note 3)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=82846649&loc=d3e38371-112697"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "Note 1",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=82846649&loc=d3e38371-112697"
  },
  "r34": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "Note 3",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=82846649&loc=d3e38371-112697"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=119364159&loc=SL77916155-209984"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918666-209980"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918673-209980"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r35": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=119202524&loc=SL77919396-209981"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=119202524&loc=SL77919359-209981"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=119202524&loc=SL77919372-209981"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888252"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r366": {
   "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"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=68072869&loc=d3e41242-110953"
  },
  "r368": {
   "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=6876686&loc=d3e534808-122878"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r371": {
   "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=6876686&loc=d3e534808-122878"
  },
  "r372": {
   "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=6876686&loc=d3e534808-122878"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(4))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(6))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(9))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r377": {
   "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=6876686&loc=d3e534808-122878"
  },
  "r378": {
   "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=116637391&loc=SL114874048-224260"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=108315417&loc=d3e61044-112788"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(10))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(5))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(1)(g))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r387": {
   "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=119400593&loc=d3e572229-122910"
  },
  "r388": {
   "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=119400593&loc=d3e572229-122910"
  },
  "r389": {
   "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=119400593&loc=d3e572229-122910"
  },
  "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=6877327&loc=d3e13212-122682"
  },
  "r390": {
   "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=119400593&loc=d3e572229-122910"
  },
  "r391": {
   "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=119400593&loc=d3e572229-122910"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r394": {
   "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=116637232&loc=SL114874131-224263"
  },
  "r395": {
   "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"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r399": {
   "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=6589523&loc=d3e617274-123014"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&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=6877327&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "740",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491622&loc=d3e9504-115650"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(a)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=114873921&loc=SL114875236-224282"
  },
  "r402": {
   "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=6590653&loc=d3e638233-123024"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r405": {
   "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"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128487-111756"
  },
  "r407": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r408": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r409": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1-"
  },
  "r411": {
   "Name": "Forms 10-K, 20-F, 40-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d-1"
  },
  "r412": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r413": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r42": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r43": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.28,29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r46": {
   "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=6877327&loc=d3e13212-122682"
  },
  "r47": {
   "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=6877327&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=6877327&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=6877327&loc=d3e13212-122682"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e637-108580"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e681-108580"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669686-108580"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724394-108580"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116657188&loc=SL116659661-227067"
  },
  "r58": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6787-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r61": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(2))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r63": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r64": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r65": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r66": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r67": {
   "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=116634182&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3367-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6911-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4273-108586"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4297-108586"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=SL98516268-108586"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765"
  },
  "r90": {
   "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=26873400&loc=d3e23780-122690"
  },
  "r91": {
   "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=26873400&loc=d3e23780-122690"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(d),(e))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(e),(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(h)(1)(i))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24072-122690"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817267264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revolving Line of Credit<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">REVOLVING LINE OF CREDIT</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">REVOLVING LINE OF CREDIT</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2019</span><span style="font-family:inherit;font-size:10pt;">, we entered into a </span><span style="font-family:inherit;font-size:10pt;"><span>$400 million</span></span><span style="font-family:inherit;font-size:10pt;"> credit agreement (the &#8220;Credit Facility&#8221;) with the various lenders party thereto and Wells Fargo Bank, National Association, as Administrative Agent. The Credit Agreement provides for an unsecured revolving credit facility in an aggregate principal amount of up to&#160;$</span><span style="font-family:inherit;font-size:10pt;"><span>400.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, including a </span><span style="font-family:inherit;font-size:10pt;"><span>$25.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> sublimit for letters of credit. The Credit Facility matures on </span><span style="font-family:inherit;font-size:10pt;">September&#160;30, 2024</span><span style="font-family:inherit;font-size:10pt;">. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Borrowings under the Credit Facility bear interest at a rate of either (1) Wells Fargo Bank&#8217;s&#160;prime rate (subject to certain higher rate determinations) plus a margin of </span><span style="font-family:inherit;font-size:10pt;"><span>0.125%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>0.75%</span></span><span style="font-family:inherit;font-size:10pt;"> or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of </span><span style="font-family:inherit;font-size:10pt;"><span>1.125%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>1.75%</span></span><span style="font-family:inherit;font-size:10pt;">.&#160; As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, our interest rate was </span><span style="font-family:inherit;font-size:10pt;"><span>4.88%</span></span><span style="font-family:inherit;font-size:10pt;"> under the prime rate option or approximately </span><span style="font-family:inherit;font-size:10pt;"><span>2.89%</span></span><span style="font-family:inherit;font-size:10pt;"> under the 30-day LIBOR option. The Credit Facility requires us to maintain certain financial ratios and other financial conditions and prohibits us from making certain investments, advances, cash dividends or loans, and limits incurrence of additional indebtedness and liens. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we were in compliance with those covenants</span><span style="font-family:inherit;font-size:10pt;color:#ff0000;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> outstanding borrowings and had unused borrowing capacity of </span><span style="font-family:inherit;font-size:10pt;"><span>$400 million</span></span><span style="font-family:inherit;font-size:10pt;"> under the Credit Facility</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">.</span><span style="font-family:inherit;font-size:10pt;"> In addition, as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> outstanding letter of credit.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid interest of </span><span style="font-family:inherit;font-size:10pt;"><span>$1,750,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$770,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$804,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</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_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6829801024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Summary of Accrued Liabilities</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued wages, bonuses and commissions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26,108</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26,380</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,234</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66,480</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817247536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Computation of Basic Earnings and Diluted Earnings Per Share Data</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic earnings and diluted earnings per share data were computed as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Numerator for basic and diluted earnings per share:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,527</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>147,462</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>169,571</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator:</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted-average basic common shares outstanding</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,640</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,445</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,273</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Assumed conversion of dilutive securities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock options</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,465</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,678</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,973</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Denominator for diluted earnings per share</span></div><div style="text-indent:9px;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160; - Adjusted weighted-average shares</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,105</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,123</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,246</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Earnings per common share:</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.79</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.84</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.55</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.65</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.68</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.32</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817316176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Deferred Revenue and Performance Obligations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Changes in deferred revenue</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise Software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>386,115</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>327,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,210</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,018</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,369</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,397</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:normal;">Totals</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:76%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferral of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>993,109</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recognition of deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(931,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 contract balances and changes in contract balances.</p></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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831012624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of the allocation of the purchase price as of the acquisition date</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have performed a valuation analysis of the fair market value of MicroPact&#8217;s assets and liabilities. The following table summarizes the final allocation of the purchase price as of the acquisition date:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:50.74074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:68%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:29%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">(In thousands)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,983</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,535</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,979</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,417</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Identifiable intangible assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>136,143</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(602</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other noncurrent liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,879</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,510</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred tax liabilities, net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,125</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total consideration</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>204,168</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaInformationTextBlock', window );">Schedule of pro forma information</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:21px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following unaudited pro forma consolidated operating results information has been prepared as if the MicroPact acquisition had occurred at January 1, 2018, after giving effect to certain adjustments, including amortization of intangibles, interest, transaction costs and tax effects.</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.51851851851852%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:44%;"/><td style="width:2%;"/><td style="width:1%;"/><td style="width:24%;"/><td style="width:1%;"/><td style="width:2%;"/><td style="width:1%;"/><td style="width:24%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Twelve Months Ended December 31,(unaudited)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,098,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,009,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,200</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>146,998</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Basic earnings per share</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.78</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.82</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.65</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3.66</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionProFormaInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.</p></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 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817260208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY AND EQUIPMENT, NET<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">PROPERTY AND EQUIPMENT, NET</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">PROPERTY AND EQUIPMENT, NET &#160;</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net consists of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="11"/></tr><tr><td style="width:65%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Useful</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">Lives</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">(years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Land</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,653</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,958</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Building and leasehold improvements</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">5-39</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>137,448</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>122,241</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Computer equipment and purchased software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">3-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>99,435</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,649</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28,506</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,238</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Transportation equipment</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>402</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>438</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>284,444</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>244,524</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated depreciation and amortization</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(112,583</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(89,347</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment, net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>171,861</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,177</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Depreciation expense was </span><span style="font-family:inherit;font-size:10pt;"><span>$23.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$21.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$17.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We paid </span><span style="font-family:inherit;font-size:10pt;"><span>$20.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$2.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> for real estate and the expansion of existing buildings in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, we purchased an office building in Latham, New York for approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$2.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> and paid </span><span style="font-family:inherit;font-size:10pt;"><span>$2.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> for improvements to that building. We also paid </span><span style="font-family:inherit;font-size:10pt;"><span>$19.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> for construction to expand our office building in Yarmouth, Maine.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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 assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, accounting policies and methodology, roll forwards, depreciation, depletion and amortization expense, including composite depreciation, accumulated depreciation, depletion and amortization expense, useful lives and method used, income statement disclosures, assets held for sale and public utility disclosures.</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> -URI http://asc.fasb.org/topic&amp;trid=2155823<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842292384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - USD ($)<br> $ in Thousands</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, 2019</div></th>
<th class="th"><div>Feb. 18, 2020</div></th>
<th class="th"><div>Jun. 30, 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_dei_CoverAbstract', window );"><strong>Cover page.</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 " 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 " 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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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 " 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">1-10485<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TYLER TECHNOLOGIES, INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000860731<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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 " 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="re">
<td class="pl " 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">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">75-2303920<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">5101 Tennyson Parkway<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Plano,<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">TX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">75024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">713-3700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TYL<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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 " 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 " 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 " 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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</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 " 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="re">
<td class="pl " 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 " 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">$ 8,172,267<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">39,396,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text">Certain information required by Part III of this annual report is incorporated by reference from the registrant&#8217;s definitive proxy statement for its annual meeting of stockholders to be held on May&#160;12, 2020.<div style="line-height:120%;padding-top:5px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"/></tr><tr><td style="width:100%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><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_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_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</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_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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 Forms 10-K, 20-F, 40-F<br> -Number 240<br> -Section 15<br> -Subsection d-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_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 CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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 Regulation 12B<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 Regulation 12B<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 Regulation 12B<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 Regulation 12B<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 Regulation 12B<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 Regulation 12B<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 Regulation 12B<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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831018384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUBSEQUENT EVENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">SUBSEQUENT EVENTS</a></td>
<td class="text">SUBSEQUENT EVENTS<div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">There are no material events or transactions that have occurred subsequent to </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830881936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SEGMENT AND RELATED INFORMATION<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">SEGMENT AND RELATED INFORMATION</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">SEGMENT AND RELATED INFORMATION</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide integrated information management solutions and services for the public sector, with a focus on local governments.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide our software systems and services and appraisal services through </span><span style="font-family:inherit;font-size:10pt;"><span>six</span></span><span style="font-family:inherit;font-size:10pt;"> business units, which focus on the following products:</span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">financial management, education and planning, regulatory and maintenance software solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">courts and justice and public safety software solutions; </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">data and insights solutions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">case management and business management solutions; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:75px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:51px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">appraisal and tax software solutions and property appraisal services.</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In accordance with ASC 280-10, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Segment Reporting</span><span style="font-family:inherit;font-size:10pt;">, the financial management, education and planning, regulatory and maintenance software solutions unit; financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions unit; courts and justice and public safety software solutions unit; the data and insights solutions unit; and case management and business management solutions unit meet the criteria for aggregation and are presented in </span><span style="font-family:inherit;font-size:10pt;"><span>one</span></span><span style="font-family:inherit;font-size:10pt;"> reportable segment, Enterprise Software (&#8220;ES&#8221;).&#160;The ES segment provides public sector entities with software systems and services to meet their information technology and automation needs for mission-critical &#8220;back-office&#8221; functions such as: financial management and education, courts and justice, public safety, planning, regulatory and maintenance, land and vital records management, data and insights and case management and business management processes. The Appraisal and Tax (&#8220;A&amp;T&#8221;) segment provides systems and software that automate the appraisal and assessment of real and personal property as well as property appraisal outsourcing services for local governments and taxing authorities.&#160;Property appraisal outsourcing services include: the physical inspection of commercial and residential properties; data collection and processing; computer analysis for property valuation; preparation of tax rolls; community education; and arbitration between taxpayers and the assessing jurisdiction.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We evaluate performance based on several factors, of which the primary financial measure is business segment operating income.&#160;We define segment operating income for our business units as income before noncash amortization of intangible assets associated with their acquisition, interest expense and income taxes.&#160;Segment operating income includes intercompany transactions.&#160;The majority of intercompany transactions relate to contracts involving more than one unit and are valued based on the contractual arrangement.&#160;Segment operating income for corporate primarily consists of compensation costs for the executive management team and certain accounting and administrative staff and share-based compensation expense for the entire company.&#160;Corporate segment operating income also includes revenues and expenses related to a company-wide user conference.&#160;The accounting policies of the reportable segments are the same as those described in Note 1, &#8220;Summary of Significant Accounting Policies.&#8221;</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Segment assets include net accounts receivable, prepaid expenses and other current assets and net property and equipment.&#160;Corporate assets consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, capitalized software development costs, deferred income taxes and net property and equipment mainly related to unallocated information and technology assets.</span></div><div style="line-height:120%;padding-bottom:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">ES segment capital expenditures included </span><span style="font-family:inherit;font-size:10pt;"><span>$12.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$2.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> for the expansion of existing buildings and purchases of buildings and land.&#160; A&amp;T segment capital expenditures included </span><span style="font-family:inherit;font-size:10pt;"><span>$8.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> for the expansion of existing buildings.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>92,567</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,638</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>285,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11,260</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>185,892</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,169</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>405,063</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,255</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,735</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>64,289</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>926</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11,457</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,672</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>261,494</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,789</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(73,829</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208,454</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,384</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,379</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,098</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>834,010</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,536</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,267,068</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,191,614</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>83,735</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,706</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>210,740</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,807</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>166,921</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>24,348</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,904</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>24,617</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,745</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>32</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>50,130</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>914</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,715</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>61,759</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>237,159</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,094</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(68,572</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,681</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,973</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>782</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,377</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,132</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>556,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>63,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,171,193</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,790,963</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017 </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>78,388</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,854</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>164,317</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,859</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>161,245</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,215</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>337,701</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,057</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>43,987</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>760</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,648</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,395</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229,001</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,788</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(51,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>197,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28,096</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,181</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,341</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45,618</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>365,736</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,279</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,199,336</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,611,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:84.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:61%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Reconciliation of reportable segment operating</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">income to the Company's consolidated totals:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total segment operating income</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208,454</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,681</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>197,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(30,642</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(22,972</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(21,686</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(21,445</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(16,217</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,381</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income (expense), net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,471</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,378</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>698</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>159,838</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,870</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>163,456</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6843790176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
<td class="nump">$ 169,571<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 cash provided by operations:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">76,672<span></span>
</td>
<td class="nump">61,759<span></span>
</td>
<td class="nump">53,395<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation expense</a></td>
<td class="nump">59,967<span></span>
</td>
<td class="nump">52,740<span></span>
</td>
<td class="nump">37,348<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_ProvisionForDoubtfulAccounts', window );">Provision for losses and sales adjustments - accounts receivable</a></td>
<td class="nump">1,636<span></span>
</td>
<td class="num">(569)<span></span>
</td>
<td class="nump">2,031<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_tyl_OperatingLeaseRightOfUseAssetsNonCash', window );">Operating lease right-of-use assets - non cash</a></td>
<td class="nump">5,397<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax benefit</a></td>
<td class="num">(6,088)<span></span>
</td>
<td class="num">(5,069)<span></span>
</td>
<td class="num">(33,664)<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_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities, exclusive of effects of acquired companies:</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 " 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">(65,738)<span></span>
</td>
<td class="num">(50,916)<span></span>
</td>
<td class="num">(33,091)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="num">(1,925)<span></span>
</td>
<td class="nump">6,642<span></span>
</td>
<td class="num">(8,444)<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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="num">(8,976)<span></span>
</td>
<td class="num">(588)<span></span>
</td>
<td class="num">(6,958)<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_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">7,403<span></span>
</td>
<td class="num">(2,416)<span></span>
</td>
<td class="nump">878<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_tyl_IncreaseDecreaseInOperatingLeaseLiabilities', window );">Operating lease liabilities</a></td>
<td class="num">(6,113)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="nump">1,516<span></span>
</td>
<td class="num">(2,445)<span></span>
</td>
<td class="nump">6,050<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_IncreaseDecreaseInContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="nump">44,442<span></span>
</td>
<td class="nump">43,603<span></span>
</td>
<td class="nump">8,639<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">254,720<span></span>
</td>
<td class="nump">250,203<span></span>
</td>
<td class="nump">195,755<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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions to property and equipment</a></td>
<td class="num">(37,236)<span></span>
</td>
<td class="num">(27,424)<span></span>
</td>
<td class="num">(43,057)<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_PaymentsToAcquireMarketableSecurities', window );">Purchase of marketable security investments</a></td>
<td class="num">(54,742)<span></span>
</td>
<td class="num">(115,625)<span></span>
</td>
<td class="num">(59,779)<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_ProceedsFromSaleAndMaturityOfMarketableSecurities', window );">Proceeds from marketable security investments</a></td>
<td class="nump">70,796<span></span>
</td>
<td class="nump">81,205<span></span>
</td>
<td class="nump">28,786<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_PaymentsForSoftware', window );">Capitalized software development costs</a></td>
<td class="num">(4,804)<span></span>
</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_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Cost of acquisitions, net of cash acquired</a></td>
<td class="num">(218,734)<span></span>
</td>
<td class="num">(178,093)<span></span>
</td>
<td class="num">(11,344)<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_PaymentsForProceedsFromOtherInvestingActivities', window );">(Increase) decrease in other</a></td>
<td class="num">(295)<span></span>
</td>
<td class="nump">1,682<span></span>
</td>
<td class="num">(1)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used by investing activities</a></td>
<td class="num">(245,015)<span></span>
</td>
<td class="num">(238,255)<span></span>
</td>
<td class="num">(85,395)<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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLinesOfCredit', window );">Decrease in net borrowings on revolving line of credit</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(10,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Purchase of treasury shares</a></td>
<td class="num">(17,786)<span></span>
</td>
<td class="num">(146,553)<span></span>
</td>
<td class="num">(7,474)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">96,908<span></span>
</td>
<td class="nump">74,907<span></span>
</td>
<td class="nump">49,845<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_ProceedsFromStockPlans', window );">Contributions from employee stock purchase plan</a></td>
<td class="nump">9,576<span></span>
</td>
<td class="nump">8,051<span></span>
</td>
<td class="nump">7,044<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided (used) by financing activities</a></td>
<td class="nump">88,698<span></span>
</td>
<td class="num">(63,595)<span></span>
</td>
<td class="nump">39,415<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">98,403<span></span>
</td>
<td class="num">(51,647)<span></span>
</td>
<td class="nump">149,775<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">134,279<span></span>
</td>
<td class="nump">185,926<span></span>
</td>
<td class="nump">36,151<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">$ 232,682<span></span>
</td>
<td class="nump">$ 134,279<span></span>
</td>
<td class="nump">$ 185,926<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_IncreaseDecreaseInOperatingLeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Increase (Decrease) In 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;">tyl_IncreaseDecreaseInOperatingLeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_OperatingLeaseRightOfUseAssetsNonCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease Right Of Use Assets Non Cash</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;">tyl_OperatingLeaseRightOfUseAssetsNonCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=SL98516268-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=98513438&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=118932676&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=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<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 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<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=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=118932676&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=118932676&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=118932676&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_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 obligation to transfer good or service to customer for which consideration has been received or is 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=118932676&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_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=118932676&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=118932676&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=118932676&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=118932676&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=118932676&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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=118930883&amp;loc=SL7669619-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: 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=118930883&amp;loc=SL7669625-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: 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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: 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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: 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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br><br>Reference 3: 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 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=118932676&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_PaymentsForSoftware">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 development, modification or acquisition of software programs or applications for internal use (that is, not to be sold, leased or otherwise marketed to others) that qualify for capitalization.</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=118932676&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_PaymentsForSoftware</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 a business, net of the cash acquired from the purchase.</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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 purchase of marketable security.</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 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118954083&amp;loc=d3e26853-111562<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireMarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=118932676&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_ProceedsFromSaleAndMaturityOfMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities  (held-to-maturity or available-for-sale) during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of 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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=SL79508275-113901<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 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from the stock plan 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 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_ProceedsFromStockPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=119407570&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=116634182&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_RepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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.(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6845946624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($) </div>
<div>subsidiary</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2016 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_GoodwillImpairmentLoss', window );">Goodwill impairment</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>
<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_tyl_NumberOfWhollyOwnedSubsidiaries', window );">Number of wholly-owned subsidiaries | subsidiary</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 396,500,000<span></span>
</td>
<td class="nump">$ 314,900,000<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_tyl_SalesCommissionRenewalPeriod', window );">Sales commission, renewal period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost', window );">Research and development expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 81,342,000<span></span>
</td>
<td class="nump">63,264,000<span></span>
</td>
<td class="nump">$ 47,324,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill', window );">Impairments of intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairments of long-lived assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts', window );">Capitalized post acquisition software development costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tyl_RemainingEstimatedEconomicLife', window );">Remaining estimated economic life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareAmortization1', window );">Amortization of software development costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 296,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_PaymentsToAcquireHeldToMaturitySecurities', window );">Purchase of held to maturity securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">81,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount', window );">Cost-method investment impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">232,682,000<span></span>
</td>
<td class="nump">134,279,000<span></span>
</td>
<td class="nump">$ 185,926,000<span></span>
</td>
<td class="nump">$ 36,151,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember', window );">Convertible Preferred Stock | Record Holdings Pty Limited</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue', window );">Cost method investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,000,000.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>
</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_tyl_CostMethodInvestmentOwnershipPercentage', window );">Investment percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<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_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling', window );">Progress billing retention percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<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_tyl_RevenueFromContractWithCustomerPaymentTerm', window );">Payment term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">30 days<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_tyl_SalesCommissionsAmortizationPeriod', window );">Sales commissions amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling', window );">Progress billing retention percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<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_tyl_RevenueFromContractWithCustomerPaymentTerm', window );">Payment term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">90 days<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_tyl_SalesCommissionsAmortizationPeriod', window );">Sales commissions amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Contractual term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Option Plan | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Option Plan | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 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="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_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis=us-gaap_UnbilledRevenuesMember', window );">Unbilled Revenues</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_AccountsReceivableNet', window );">Accounts receivable, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 134,000,000.0<span></span>
</td>
<td class="nump">104,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis=us-gaap_UnbilledRevenuesMember', window );">Unbilled Revenues | Retention Receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_AccountsReceivableNet', window );">Accounts receivable, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,100,000<span></span>
</td>
<td class="nump">$ 12,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember', window );">SaaS arrangements services | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember', window );">SaaS arrangements services | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerTypicalContractTerm', window );">Typical contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [Line Items]</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>
</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_tyl_RevenueFromContractWithCustomerContractTerm', window );">Contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_AccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accounting policies.</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;">tyl_AccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Capitalized Post Acquisition Software Development Costs</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;">tyl_CapitalizedPostAcquisitionSoftwareDevelopmentCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_CostMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cost method investment ownership percentage.</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;">tyl_CostMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_NumberOfWhollyOwnedSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Wholly Owned Subsidiaries</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;">tyl_NumberOfWhollyOwnedSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_RemainingEstimatedEconomicLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Remaining Estimated Economic Life</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;">tyl_RemainingEstimatedEconomicLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_RevenueFromContractWithCustomerContractTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Contract Term</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;">tyl_RevenueFromContractWithCustomerContractTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_RevenueFromContractWithCustomerPaymentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Payment Term</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;">tyl_RevenueFromContractWithCustomerPaymentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Percentage Withheld From Progress Billing</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;">tyl_RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_RevenueFromContractWithCustomerTypicalContractTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Typical Contract Term</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;">tyl_RevenueFromContractWithCustomerTypicalContractTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_SalesCommissionRenewalPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sales Commission, Renewal 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;">tyl_SalesCommissionRenewalPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_SalesCommissionsAmortizationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sales Commissions Amortization 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;">tyl_SalesCommissionsAmortizationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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.</p></div>
<a 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(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CapitalizedComputerSoftwareAmortization1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization of capitalized computer software 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 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128487-111756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedComputerSoftwareAmortization1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=SL98516268-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI) and investment in equity security without readily determinable fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=99377092&amp;loc=SL75136599-209740<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 impairment loss on investment in equity security without readily determinable fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 321<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116654751&amp;loc=SL75117539-209714<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=108376223&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=118932676&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=108376223&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_ImpairmentOfIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to 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 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-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_ImpairmentOfIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ImpairmentOfLongLivedAssetsHeldForUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2921-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 220<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=114873921&amp;loc=SL114875236-224282<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 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226348&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfLongLivedAssetsHeldForUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireHeldToMaturitySecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 through purchase of long-term held-to-maturity securities.</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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118954083&amp;loc=d3e26853-111562<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireHeldToMaturitySecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Research and development expense during the period related to the costs of developing and achieving technological feasibility of a computer software product to be sold, leased, or otherwise marketed.</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 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</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)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-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_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember</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_dei_LegalEntityAxis=tyl_RecordHoldingsPtyLimitedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">dei_LegalEntityAxis=tyl_RecordHoldingsPtyLimitedMember</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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis=us-gaap_UnbilledRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis=us-gaap_UnbilledRevenuesMember</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_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis=tyl_RetentionReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis=tyl_RetentionReceivableMember</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=tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember</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=tyl_AppraisalServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_AppraisalServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6846391392">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions - Assets and Liabilities Acquired (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Feb. 28, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 840,117<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 753,718<span></span>
</td>
<td class="nump">$ 657,987<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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember', window );">MicroPact</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,983<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,535<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,979<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other noncurrent assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,417<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Identifiable intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">136,143<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">76,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(602)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther', window );">Accrued expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,092)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other noncurrent liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(8,879)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue', window );">Deferred revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(13,510)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liabilities, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(13,125)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Total consideration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 204,168<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, acquired at the acquisition date. 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.</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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 revenue expected to be recognized as such within one year or the normal operating cycle, if longer, assumed at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assumed at the acquisition 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 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31917-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 intangible assets, excluding goodwill, acquired at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://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=77989000&amp;loc=SL49117168-202975<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 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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember</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>57
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842231360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill Beginning Balance</a></td>
<td class="nump">$ 753,718<span></span>
</td>
<td class="nump">$ 657,987<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill Ending Balance</a></td>
<td class="nump">840,117<span></span>
</td>
<td class="nump">753,718<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_BusinessAcquisitionAxis=tyl_SocrataInc.Member', window );">Socrata, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,657<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_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember', window );">Other acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">10,080<span></span>
</td>
<td class="nump">20,074<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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember', window );">MicroPact</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">76,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill Beginning Balance</a></td>
<td class="nump">747,161<span></span>
</td>
<td class="nump">651,430<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill Ending Balance</a></td>
<td class="nump">833,560<span></span>
</td>
<td class="nump">747,161<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software | Socrata, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,657<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software | Other acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">10,080<span></span>
</td>
<td class="nump">20,074<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software | MicroPact</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">76,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill Beginning Balance</a></td>
<td class="nump">6,557<span></span>
</td>
<td class="nump">6,557<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_Goodwill', window );">Goodwill Ending Balance</a></td>
<td class="nump">6,557<span></span>
</td>
<td class="nump">6,557<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax | Socrata, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax | Other acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax | MicroPact</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill acquired</a></td>
<td class="nump">$ 0<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_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://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=77989000&amp;loc=SL49117168-202975<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 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_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.</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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&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_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GoodwillRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillRollForward</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=tyl_SocrataInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_SocrataInc.Member</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_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember</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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember</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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember</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>58
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830962096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Other Information Pertaining to Option Activity (Detail) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant-date fair value of stock options granted (in dollars per share)</a></td>
<td class="nump">$ 74.54<span></span>
</td>
<td class="nump">$ 66.52<span></span>
</td>
<td class="nump">$ 55.56<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Total intrinsic value of stock options exercised</a></td>
<td class="nump">$ 155,899<span></span>
</td>
<td class="nump">$ 176,716<span></span>
</td>
<td class="nump">$ 137,699<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-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_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=116856206&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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6824159696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Additional Information (Detail) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for grant</a></td>
<td class="nump">3,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Shares reserved for future issuance</a></td>
<td class="nump">22,900,000<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_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice', window );">Weighted average grant date value (in dollars per share)</a></td>
<td class="nump">$ 188.48<span></span>
</td>
<td class="nump">$ 169.24<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_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember', window );">Employee Stock Purchase Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for grant</a></td>
<td class="nump">702,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Shares reserved for future issuance</a></td>
<td class="nump">2,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate', window );">Percentage of annual compensation participants may contribute</a></td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent', window );">Purchase price as a percentage of closing price on the last day of the quarter for ESPP transactions</a></td>
<td class="nump">85.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Contractual term</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Unvested options to purchase (in shares)</a></td>
<td class="nump">1,200,000<span></span>
</td>
<td class="nump">1,700,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Total unrecognized compensation cost</a></td>
<td class="nump">$ 148.7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average amortization period</a></td>
<td class="text">2 years 6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">6 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">6 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period</a></td>
<td class="text">5 years<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_tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options nonvested weighted average exercise price.</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;">tyl_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for 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 (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 to be recognized 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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</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)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 highest percentage of annual salary that an employee is permitted to utilize with respect to the 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> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 non-vested options outstanding.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Purchase price of common stock expressed as a percentage of its fair value.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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>EXCEL
<SEQUENCE>60
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( ,&&4U ?(\\#P    !,"   +    7W)E;',O+G)E;'.MDD^+
MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V
M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F'
M.>RGGD7E2B.5^S3%":4A+<TXP)6E/S/WJVR;A5ND9T*YKCM+1[873T$7LF<;
M!I99-G\LCNVW<+ZT+/0:S>,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C
M-R."?S]PN -02P,$%     @ P8934"?HAPZ"    L0   !    !D;V-0<F]P
M<R]A<' N>&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(?
MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/
M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+""
MWTG] E!+ P04    " #!AE-0I; _M^\    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+/:L,P#(=?9?B>R$EH82;-9:6G#08K;.QF;+4UB_]@:R1]^R5>
MFS*V!]C1TL^?/H%:%83R$9^C#QC)8+H;;>^24&'#3D1! "1U0BM3.27<U#SX
M:"5-SWB$(-6'/"+4G*_!(DDM2<(,+,)"9%VKE5 1)?EXP6NUX,-G[#-,*\ >
M+3I*4)45L&Z>&,YCW\(-,,,(HTW?!=0+,5?_Q.8.L$MR3&9)#<-0#DW.33M4
M\/;T^)+7+8Q+))W"Z5<R@LX!-^PZ^;5YV.YWK*MYS0M>%]7]OEJ+52V:U?OL
M^L/O)FR]-@?SCXVO@ET+O^ZB^P)02P,$%     @ P8934)E<G",0!@  G"<
M !,   !X;"]T:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T
M$W-I=MNTF83M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY
M\^XN8NB&B)3R>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2
MP]R"BPA+>!3+UES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?
M,_@5RU2-9:,!$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA
M5,+$P&IG/U9KQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M
M&N#C\7@XMLO2BW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_K
MFVB<"HU;3]-K=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K
M>A(5M>5 TR  6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T
M1G*=D 4. #?$T4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)
MI#-ZG7TZSFN4?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R
M.AQG0GS/]O:1I24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG
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
M%P0<H[#E8E*>XO($EB>V/)F49\X44<4,&Z30("7E<\> *A;8((,&&2EG;LI
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
MA-BH^1R;VX9J<[FHP_,PGKIXWIWV"4\70WLX[X%FEXW8Y7]02P,$%     @
MP8934'B'_GY1 @  N <  !@   !X;"]W;W)K<VAE971S+W-H965T-"YX;6R-
ME=N.FS 0AE\%\0 Q8(X106JHJE9JI6BK;J^=Q EH#::V$[9O7]NP"(R;W5S$
MIW]FOC$PD_>4O? *8^&\-J3E.[<2HML"P$\5;A#?T ZW\N1"68.$7+(KX!W#
MZ*R-&@("SXM!@^K6+7*]=V!%3F^"U"T^,(??F@:QOWM,:+]S??=MXZF^5D)M
M@"+OT!7_Q.)7=V!R!28OY[K!+:]IZS!\V;F?_&WI>\I *YYKW//9W%&I'"E]
M48MOYYWK*2),\$DH%T@.=UQB0I0GR?%G=.I.,97A?/[F_8M.7B9S1!R7E/RN
MSZ+:N:GKG/$%W8AXHOU7/"84N<Z8_7=\QT3*%8F,<:*$ZW_G=.."-J,7B=*@
MUV&L6SWVPTF<C69V@V T""8#/WQH $<#:!B @4RG^AD)5.2,]@X;GE:'U$OA
M;Z&\S)/:U'>GSV2V7.[>"S_(<G!7CD;-?M $,TVP5)1K11Q-$B !)HK 2A%H
M>SBG@)[= ;0Z@-I!N'#@&VD,FDAK6JV)$I@:F:Q%81PF=I30BA):4(S[VH>K
M*+YG@#R4+# B*T9DP8 &QJ")%S'TSV!Y7[< BJU L04H-(#B52 3Y9%B 9%8
M(1(+1&1 #)ID'F+C&2]3^8YH@9):45(+2FR@I/^[^-4C^HAR 959H3(+5&)
M9:M08>J'218;=:/\@'"!)-N!M41Y%JC4K%'>*EB:P@Q&JU*U%F9I$D2>6;#
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
M30<Z9V,$E>&+F)A*CT$)0$51*H*+F;6LK09A,2%L# (X@]>4D&3CGM#97 V
M8C)8@ 508$]MJ@.9:#F%VC.I5 ,@=RK!I=I*ZZV+<;< Q[T*)M.:^MX*,)O8
M))$];B6P0P@-JL6*H+]D6  F$MF[SK#C"/-USQ+8)@3W"::Y@CN T$Y;MK$:
MQ,6,L L(9 -L3^FXWNF0.-ILW FTUH9-!L^FDMZ]C,"6(8!G\%)R.Q!"6LIG
M !73P:8AD&M0"Q-<[(UTFNV\N7'$L'A#C$U!(E.@-M:!S@GYA-K"4G);<(J>
M%U8@E_4][B&Q>TCD'M3(.E#49(9RN8B)J?0<*)!O4".38%<N3)(85IMA8$P*
M^X=$_D'-3 (E=W3F5T.HF X6:(D$VE$ZFMN9DMI3<UD (#AX<1UW2FA%&N 6
MX,#1"R1S(DC639S9I-;(T*=8$MN'Y"<6X3VM C^,(#\#L.!=C_)+[$72?MW.
M)#8/R<V#:; $QP-M:T&CLS&(BQEA6Y#(%JB=27Z6"#8D]"PAN2],C/2*;G=
M.J&#TWVK"3N(! ["B\FM(81 ^7"02%R/_BEL'PK9!V6CN.1/C+)4:P9A,2'L
M#0IX0Z ZJ[CN3V3/@4%AX5=(^*F1*WX6,"'03?5R$!83ZGEJ@T2?&KGB.^Y@
MZ,.=I>*B'Q+:/2"5M[V<L3,HY S4R!677T.7UF5,3 6KKD*J2XV\ \4*KR5M
M^-4P+J:$A5>!AT7,QA7?W4_HL]75 "@F@R5<@?U_8.W%=^S""I?0K?T" +F)
M Y!305.9O@4X;N( U!R6Z6EY!9,EYT.-JX7M10%[H<]J%XK[!GR(RF'>*]I*
MT[-W \T+IS_2XF6S+T</>57EN_9EP'.>5UF=,?E6CVZ=I4^GBVWV7#5?7?V]
M.+[H.5Y4^:%[B34]O4F;_P]02P,$%     @ P8934+%VAR2T 0  T@,  !@
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
M\?BRL?^U,1Y02G*#(]3B!UL,!;4/QSL\VVG,)L.;?OY!;/G&Q1]02P,$%
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
M$?,:P9!]3L'74ASX/W"^#D]6%281GKQ1^!^"W2K!+A+L/BQQ+29YEX0M>JK
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
M:-<932S4.;W;'XYIB(\!/SH8W>I,0B5G8UZ"\53E=!<$@832!P:!VP7N0<I
MA#)>9TZZI S ]?F=_7.L'6LY"P?W1O[L*M_F]):2"FHQ2/]LQD>8Z[FF9"[^
M"UQ 8GA0@CE*(UU<23DX;]3,@E*4>)OV3L=]G&X2/L.V 7P&\ 5P&_.P*5%4
M_B"\*#)K1F*GWO<B//'^P+$W97#&5L0[%._0>REXDF3L$HCFF.,4PU<Q^R6"
M(?N2@F^E./+_X'P;GFPJ3"(\^4MANDV0;A*DD2#]L,2MF.M_DK!53Q78)DZ3
M(Z49=)SDE7<9V+OXB.Q/^#3M7X5M.NW(V7A\V=C_VA@/*&5WA2/4X@=;# FU
M#\=/>+;3F$V&-_W\@]CRC8O?4$L#!!0    ( ,&&4U (X$:NM0$  -(#   9
M    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;'U3;6_;(!#^*X@?4!+B-5%D
M6VHZ39VT25&KK9^)?7Y1@7,!Q]V_+V#7\S9K7X [[GGNN>-(!S0OM@%PY$U)
M;3/:.-<=&;-% TK8&^Q ^YL*C1+.FZ9FMC,@R@A2DO'-YI8IT6J:I]%W-GF*
MO9.MAK,AME=*F%\GD#AD=$L_'(]MW;C@8'G:B1J>P/WHSL9;;&8I6P7:MJB)
M@2JC=]OC*0GQ,>!G"X-=G$FHY(+X$HRO948W01!(*%Q@$'Z[PCU(&8B\C->)
MD\XI W!Y_F#_$FOWM5R$A7N4SVWIFHP>*"FA$KUTCS@\P%3/)TJFXK_!%:0/
M#TI\C@*EC2LI>NM032Q>BA)OX][JN _C3;*?8.L /@'X##C$/&Q,%)5_%D[D
MJ<&!F+'WG0A/O#URWYLB.&,KXIT7;[WWFO/=;<JN@6B*.8TQ?!&SG2.89Y]3
M\+44)_X/G*_#=ZL*=Q&^^T/A?IT@625((D'RWQ+78@Y_)6&+GBHP=9PF2PKL
M=9SDA7<>V#L>W^1W^#CMWX6I6VW)!9U_V=C_"M&!E[*Y\2/4^ \V&Q(J%XY[
M?S;CF(V&PV[Z06S^QOD[4$L#!!0    ( ,&&4U".K>?)M0$  -(#   9
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
M]2#=2:VT8-:9NB&FU\"J$"0XH9O-/1&LD[C(@N^LBTP-EG<2SAJ900BF_YR
MJS''6_SN>.F:UGH'*;*>-? =[(_^K)U%%I:J$R!-IR324.?X<7L\I1X? #\[
M&,UJCWPE%Z5>O?&ERO'&)P0<2NL9F%NN\ 2<>R*7QN^9$R^2/G"]?V?_%&IW
MM5R8@2?%?W65;7-\P*B"F@W<OJCQ,\SUI!C-Q7^%*W ']YDXC5)Q$[ZH'(Q5
M8F9QJ0CV-JV=#.LXG>P?YK!X )T#Z!)P"#ID$@J9/S/+BDRK$>GI[GOF6[P]
M4G<WI7>&JPAG+GGCO->"'G89N7JB&7.:,'2%V2X(XM@7"1J3.-$/X30>OHMF
MN OAN[7Z0Q(G2*($22!(_BLQN2DQADGC(FE4)(T0W-^(Q##[&Q&R:IP W80G
M:U"I!AG&9>5=IN*1AL;_@T\C]8WIII,&791USR<TN5;*@DME<^=R:=T4+P:'
MVOKMWNWU])8GPZI^'E.R_"N*OU!+ P04    " #!AE-0R",@V<8!   W!
M&0   'AL+W=O<FMS:&5E=',O<VAE970R."YX;6QM5-N.VR 0_17$!RPV2387
MV98V6U6MU$K15FV?B3V^:+FX@./MWQ>PUW537@PSG#EG9F"<C4J_FA; HC?!
MI<EQ:VU_(L24+0AF'E0/TIW42@MFG:D;8GH-K I!@A.:)(]$L$[B(@N^BRXR
M-5C>2;AH9 8AF/Y]!J[&'*?XW?'2-:WU#E)D/6O@&]CO_44[BRPL52= FDY)
MI*'.\5-Z.N\\/@!^=#":U1[Y2JY*O7KC<Y7CQ"<$'$KK&9A;;O ,G'LBE\:O
MF1,ODCYPO7]G_QAJ=[5<F8%GQ7]VE6US?,"H@IH-W+ZH\1/,]>PPFHO_ C?@
M#NXS<1JEXB9\43D8J\3,XE(1[&U:.QG6<3K9/\YA\0 Z!] EX!!TR"04,O_
M+"LRK4:DI][WS%]Q>J*N-Z5WAE:$,Y>\<=Y;00^'C-P\T8PY3QBZPJ0+@CCV
M18+&),[TOW :#]]$,]R$\,U:_;B/$VRC!-M L/VGQ.-=B1',,8F+[*(BNPA!
M>B<2P]RW@JPN3H!NPI,UJ%2##..R\BY3\43#Q?^%3R/UE>FFDP9=E77/)UQR
MK90%ETKRX')IW10O!H?:^NW>[?7TEB?#JGX>4[+\*XH_4$L#!!0    ( ,&&
M4U!.?L;(MP$  -(#   9    >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;&U3
MVVZ<,!#]%<L?$(.7M.D*D+*IJE9JI56JIL]>&,"*C:EMEO3O.S:$TI07VS,^
MY\S%XWPR]MEU )Z\:-6[@G;>#T?&7-6!%N[&#-#C36.L%AY-VS(W6!!U)&G%
M>)*\8UK(GI9Y])UMF9O1*]G#V1(W:BWL[Q,H,Q4TI:^.1]EV/CA8F0^BA>_@
M?PQGBQ9;56JIH7?2],1"4]#[]'C* CX"GB1,;G,FH9*+,<_!^%(7- D)@8+*
M!P6!VQ4>0*D@A&G\6C3I&C(0M^=7]4^Q=JSE(AP\&/53UKXKZ!TE-31B5/[1
M3)]AJ>>6DJ7XKW %A?"0"<:HC')Q)=7HO-&+"J:BQ<N\RS[NTWR3I0MMG\ 7
M E\)=S$.FP/%S#\*+\K<FHG8N?>#"$^<'CGVI@K.V(IXA\D[]%Y+_N&0LVL0
M6C"G&<,WF'1%,%1?0_"]$"?^'YWOTP^[&1XB_;"E)\F^0+8KD$6![)\2LS<E
M[F%NWP1AFYYJL&V<)D<J,_9QDC?>=6#O>7R3O_!YVK\)V\K>D8OQ^+*Q_XTQ
M'C"5Y 9'J,,/MAH*&A^.[_%LYS&;#6^&Y0>Q]1N7?P!02P,$%     @ P893
M4($C#;OC 0   04  !D   !X;"]W;W)K<VAE971S+W-H965T,S N>&UL=53;
M;IPP$/T5Y ^(P>PNFQ4@91-5K=1*JU1MG[TP7!0;4]LLZ=_7-H12XKQ@S_C,
M.3.#Q^DHY(MJ '3PREFG,M1HW9\P5D4#G*H[T4-G3BHA.=7&E#56O01:NB#.
M, G# ^:T[5">.M]%YJD8-&L[N,A #9Q3^><,3(P9BM";X[FM&VT=.$][6L-W
MT#_ZBS067EC*ED.G6M$%$JH,/42G<V+Q#O"SA5&M]H&MY"K$BS6^E!D*;4+
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
M;NQ>#?-E"(SLQM%)I_E=_ %02P,$%     @ P8934+[H:O?$ 0  -P0  !D
M  !X;"]W;W)K<VAE971S+W-H965T,S<N>&UL;53K;ML@%'X5Q .4Q)>TBFQ+
M3:MJDS8IZK3M-[&/;50N'N"X>_L!=CTOXX^!PW<Y!S@N)J7?3 ]@T;O@TI2X
MMW8X$F+J'@0U=VH Z79:I06U;JD[8@8-M DDP4FRVQV(H$SBJ@BQLZX*-5K.
M))PU,J,05/\^ 5=3B??X(_#*NM[Z *F*@7;P#>SWX:S=BJPJ#1,@#5,2:6A+
M_+@_GG*/#X ?#":SF2-?R46I-[_XW)1XYQ,"#K7U"M0-5W@"SKV02^/7HHE7
M2T_<SC_47T+MKI8+-?"D^$_6V+[$#Q@UT-*1VU<U?8*EGARCI?@O< 7NX#X3
MYU$K;L(7U:.Q2BPJ+A5!W^>1R3!.\\XA7VAQ0K(0DI7P$'S(;!0R?Z:65H56
M$]+SV0_47_'^F+BSJ7TP'$78<\D;%[U6:986Y.J%%LQIQB0;S'Y%$*>^6B0Q
MBU/R'SV)T]-HAFF@IUMZFL4%LJA %@2R?TK,;DJ,8?*X21XUR2,"AQN3&.;^
MQH1L+DZ [L*3-:A6HPSMLHFN7?&8A(O_"Y];ZBO5'9,&791USR=<<JN4!9?*
M[L[ETKLN7A<<6NNG]VZNY[<\+ZP:EC8EZ[^B^@-02P,$%     @ P8934-%$
M?>2X 0  T@,  !D   !X;"]W;W)K<VAE971S+W-H965T,S@N>&UL;5/;;IPP
M$/T5RQ\0LX9T-RM RJ:J6JF15JG:/GMA "N^4-LLR=_'-H32E!?;,S[GS,7C
M?-3FV78 #KU(H6R!.^?Z(R&VZD R>Z-[4/ZFT48RYTW3$ML;8'4D24%HDGPB
MDG&%RSSZSJ;,]> $5W VR Y2,O-Z J'' N_PN^.)MYT+#E+F/6OA![B?_=EX
MBRPJ-9>@+-<*&6@*?+\[GK* CX!?'$:[.J-0R47KYV!\JPN<A(1 0.6" O/;
M%1Y B"#DT_@S:^(E9""NS^_J7V+MOI8+L_"@Q6]>NZ[ !XQJ:-@@W),>O\)<
MSRU&<_'?X0K"PT,F/D:EA8TKJ@;KM)Q5?"J2O4P[5W$?IYML/].V"70FT(5P
MB''(%"AF_IDY5N9&C\A,O>]9>.+=D?K>5,$96Q'O?/+6>Z]EFAUR<@U",^8T
M8>@*LUL0Q*LO(>A6B!/]CTZWZ>EFAFFDIVMZNM\6R#8%LBB0_5/BW8<2-S"W
MR8<@9-53"::-TV11I0<5)WGE70;VGL8W^0N?IOV1F98KBR[:^9>-_6^T=N!3
M26[\"'7^@RV&@,:%X]Z?S31FD^%T/_\@LGSC\@U02P,$%     @ P8934'^9
M7@&V 0  T@,  !D   !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL;5/;;MP@
M$/T5Q >$7>QMHI5M*9LJ2J566J5J^\S:XXO"Q06\3O^^ W8<-_4+,,,Y9RX,
MV6CLBVL!/'E54KN<MM[W1\9<V8(2[L;TH/&F-E8)CZ9MF.LMB"J2E&1\M_O$
ME.@T+;+H.]LB,X.7G8:S)6Y02M@_)Y!FS.F>OCF>NZ;UP<&*K!<-? ?_HS];
MM-BB4G4*M.N,)A;JG-[OCZ<TX"/@9P>C6YU)J.1BS$LPOE0YW86$0$+I@X+
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
M ZH<42:P++/H]LK,L#PRH(^1NUKI0:/1Z6H:$2_'&L>!QD6N&$.0(/Q@?>)
MGR))F,"RP_GM0\NQHG"@*)&K7!!$^<%RPH&<1*YR(1"U!N!823A0DLB5+0B*
M"3]8!3A89\7ND@:"J/Y@ G) P-C+1L12:GXP2[F_>A*>K"$0Z0=3F0,JQT36
M"TQ0$=Z>]0)S3R#NN5F/0%2]%IB@ I1\+^L1**;V/L3F!Q'4S7H((C1+8!8+
M0% OZR&(&C?,8@$(ZF4]!!G"#V:Q0 1ULQZ"(L(/9K% +"8$1V""BCO*J,#<
M$S[WI+MR6 (0F8T2$U3ZQ5&&A.Q)3%#)[MC.8^Y)1"MW;A&(4C2)N2=]6LF0
M$R:(HP=Y1V\Q8R0B@]=;!"(R66+&2)\,,B1$1&(R2'-';S$9Y"W5"H'(N<6,
MD8@Q1+52F SJCFJE,!D4*$1>;Q&(JE8*,T;Y9) A07V%R:#N.(93F P*'<2Y
M>T'EG\35NZ80'6$I?X_*PO;,A]H8*.+TSF>/#*F^8?8H?<?P8/8H4$K\X3%@
M>!@<'8#D5P<',U+Y9),A48P5)IN*;Q\<C<FFT;;,7==!$.4',U*C]:.[KD,@
M:C>C,2,U8B0AV!HS4M_!2(T9J='>S1M5M'>C_&"":;0M<T;U&8&H]8DFCLA1
M#2-68QJS4-]1PS1FC$;ER<LA ")S"--*@QK&J--[3"MS1PTSF#'F%L9 D.LG
MN+BQRVRQ:R]HR\DZ?S]6S0W2Q=OA$OB1-S=^SOLE>UAU-X'_F^ENEO](BMWA
M6$[>\JK*L_;6;YOGE:UC#+_4^;>WR69X2.VV:KZ:^GO1W>AV#U5^ZF^K@^'*
M?/$?4$L#!!0    ( ,&&4U ?'(Z85 (  % '   9    >&PO=V]R:W-H965T
M<R]S:&5E=#0R+GAM;'U578^;,!#\*XCW'F#,QT4$Z0BJ6JF5HJNN?7:($] !
MIK83KO^^MB$$C"\OP5YF9F<=LYOTA+ZS$F-N?31UR[9VR7FW<1Q6E+A![(ET
MN!5O3H0VB(LM/3NLHQ@=%:FI'>"ZH=.@JK731,7V-$W(A==5B_?48I>F0?1?
MAFO2;VW/O@5>JW/)9<!)DPZ=\2_,W[H]%3MG4CE6#6Y915J+XM/6?O$V>2SQ
M"O"[PCV;K2U9R8&0=[GY?MS:KC2$:UQPJ8#$XXIWN*ZED+#Q=]2TIY22.%_?
MU+^JVD4M!\3PCM1_JB,OMW9L6T=\0I>:OY+^&Q[K"6QK+/X'ON):P*43D:,@
M-5._5G%AG#2CBK#2H(_A6;7JV8_Z-YJ9 $8"F A>^)#@CP3_3H /"7 D0(W@
M#*6HL\D11VE"26_1X=_MD+Q$W@:*TR]D4!VV>B>.AXGH-86>ESA7*31BL@$#
M9I@[PA'J4PI@2I&!%1TL$^S6B#!80G(#)#2;\(UU^HKO+^H$9@%H%(!* "X$
M?.V@!DR@,.V "6&D%;L&!1!HH'P-\OWG3PH.C'X#@U^H^1TPX2R+%_JAYG<-
M^A*$SYK?-0BX_B>W)#3Z#0U^M4N0A08K4 /M#""@7^E\#7+-9B.CV<A@5C^W
M:)5B?1GRZ/%E6%B)C59B@Q4M2Q:OLT1^K/E=@Q9^!RO.K*\TF)Y5SV9602XM
MEY_G+#J-A1<@^Y(6S\2X&+K[76:8-3\1/5<MLPZ$BZZG>M.)$(Z%1_=)V"O%
M>)LV-3YQN8S$F@Y-?MAPTHWSRYF&:/H?4$L#!!0    ( ,&&4U#G9X734 (
M (P'   9    >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;(U5[8^;(!C_5XS?
M[Q3$M\::[&R6+=F2YI9MGVE+JSD5![3>_OL!4F.5KO=%7OR]/ \\0-93]L9+
M0H3SWM0M7[NE$-W*\_B^) WFS[0CK?QSI*S!0@[9R>,=(_B@24WM0=^/O 97
MK9MG>F[+\HR>15VU9,L<?FX:S/Z^D)KV:Q>XUXG7ZE0*->'E68=/Y <1/[LM
MDR-O5#E4#6EY15N'D>/:_016&P 502-^5:3GD[ZC4ME1^J8&7P]KUU<1D9KL
MA9+ LKF0@M2U4I)Q_#&B[NBIB-/^5?VS3EXFL\.<%+3^71U$N783USF0(S[7
MXI7V7XA)*'0=D_TW<B&UA*M(I,>>UEQ_G?V9"]H8%1E*@]^'MFIUVQO]*\U.
M@(8 1P) _R4$AA!\E( , <T(WI"*7IL-%CC/&.T=-FQOAU45@162J[]7DWJQ
M]3^Y/%S.7G($DLR[*"&#>1DP<(*!MXABB4 @O<5LEI@H'"&>#'*,%%HCA9H?
M3#V@;Q<(K *!%D 3 >"#6:H#)M28=L D:0KM-LAJ@Y8V8&XS8**)S5,4)+'=
M)K3:A!:;>&83+FU E, [Z416GVCI \.93[18M:<4Q$$0S4K @HMCD,([=1!;
M XH7 2$([ *)52#Y>"&E5H'T<2$5Z;*0PB@([#; MY]-_W$I%09TL\DH0.B.
MTYU; #RNIL* ;LL)(O_.[@'[,0;P<4$5!G13*3+U:.;D36XY]4Y]Q^Q4M=S9
M42$O3'VM'2D51$KZSU*LE$_C.*C)4:AN+/ML>!^&@:"=>?N\\0'._P%02P,$
M%     @ P8934!F6=XJB!   J!D  !D   !X;"]W;W)K<VAE971S+W-H965T
M-#0N>&ULE9EM<YLX$,>_BH?W+:RTXB%C>Z9VFB9MDLGTYNY>DUB./07C Q+W
MOOT!EETC[?;@C0WXO[M:5K^5,--#4?ZH-EK7DY]YMJMFWJ:N]U>^7[UL=)Y6
M'XN]WC6_K(LR3^OFM'SUJWVITU5GE&>^"(+0S]/MSIM/NVM/Y7Q:O-79=J>?
MRDGUEN=I^>]"9\5AYH%WNO!]^[JIVPO^?+I/7_4?NOYS_U0V9_[9RVJ;ZUVU
M+7:34J]GWB>X>E2J->@4?VWUH;HXGK2I/!?%C_;D;C7S@G9$.M,O=>LB;;[>
M]5)G6>NI&<<_QJEWCMD:7AZ?O-]TR3?)/*>57A;9W]M5O9EYL3=9Z77ZEM7?
MB\.M-@DI;V*RO]?O.FOD[4B:&"]%5G6?DY>WJBYRXZ492I[^/'YO=]WWX?B+
M2HP9;2",@3@; /[60!H#.=0 C0$.-5#&0 TU"(U!.-0@,@;14(/8&,1##1)C
MD PU@.!4N6"PR;G8OZH-\O<FIW+#X'K#J> PN.)P*CG8-?>/T[?CX3JMT_FT
M+ Z3\HCT/FT[!UPUTL9Y>[4CK/NQ8:)JKK[/48BI_]YZ,IK%42-Z&MG7+"D-
M]C77E$;U-9\I3=C7W%":J*_Y0FGBON:6TB1]S1VAD4%?\Y720%_SC=)8]_G>
MU5B*!U<16C?PD9#\NG]^,QG.,T+0,T)T#F1OI)+V(&D/LO. /0_67+@_:E2G
MV1V'&00!'0;I,.B$@< .<]2$%V%B# "LV?* SF@B)2.P)LRC*PM5E,01/6Q%
M#UL1=T?1'D+:0SB\0A'M(2+&8%&VB)QD1:"X$L5TG)B(8]W[1>R4"!+@XB1T
MG(2(8Q5OD3CY ')AVB6"[)8!$2AA?' =%X:7#QA&0?Q_ 9=&U*^@$&S.#,U
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
MHPWPU@56#<4/9(M50V@_FF4[!SD%3EA:A%3C.%<05@VE]V?+L6HXVFVFE!]
MMX>E*(PGE!]@8\I30MRQ_7&L00XT*%W'1ZP:3@^4Q7$$17O-E 0 Y"0!Q]+B
M0%HNU7"L&AX]D"U6#4=[S8P$\8P$8GILW""0DP!8?QSH3SJV>8ZEQ1\X$7(L
M+8[.A#,"S$%S @2CWJU4]<&VN8VWU>?*]MBCV6LK_4RV]_N ]WWXEZP^Y%7C
MO>K6=)"VS]MKW2H32_C)U/QH6O_KH%#[MKM-S'W=][_]H-6GH;</KG\PK/X#
M4$L#!!0    ( ,&&4U!92$F"60(  *,'   9    >&PO=V]R:W-H965T<R]S
M:&5E=#0X+GAM;(U5VXZ;,!#]%<0'8 R$0$20<E'52JT4;=7MLT,F 2U@:CMA
M^_>U#6$)<;9Y";9SSIDSX\LD+65O/ <0UGM5UGQIYT(T"X1XED-%N$,;J.4_
M1\HJ(N24G1!O&)"#)E4E\EPW1!4I:CM-]-J.I0D]B[*H8<<L?JXJPOZNH:3M
MTL;V=>&E..5"+: T:<@)?H+XU>R8G*%!Y5!44/."UA:#X])>X<46>XJ@$:\%
MM'PTME0J>TK?U.3;86F[RA&4D DE0>3G ALH2Z4D??SI1>TAIB*.QU?U+SIY
MF<R><-C0\G=Q$/G2CFSK $=R+L4+;;]"G]#,MOKLO\,%2@E73F2,C)9<_UK9
MF0M:]2K22D7>NV]1ZV_;ZU]I9H+7$[R!@,-/"7Y/\#\(P:>$H"<$$P+J4M&U
MV1)!TH31UF+=]C9$G2*\"&3U,[6HBZW_D^7A<O62!E&4H(L2ZC'K#N.-,'A
M(*D^A/!,(=;>'=V[#;"Y1X2S6\C6  G-)GQCGK[F^^,\YYY9(# *!%H@N"E4
M/"E4AXDTINXR]9U@DJP!A)U)1;;W(#QW?+/?F='O[-YO[$[\SNZMN,YD]S<&
MD/.@<J'126AP\N  S8T"\^?W+C(*1/^OQ;;#Q#=I/G 9&X/$AB#3;8T-06)S
M$.R:[ZMK"//@8. '5QX_7T]LO-(K[#U1T1YT<XCCT77H J'12U4!.^DNP*V,
MGFNA+OQH=>@T*]UH)NMKU8'T"_@AT[6O'X2=BII;>RKD.ZI?NR.E J1)UY''
M.Y<=<YB4<!1J.)=CUK6-;B)HT[=$-/3E]!]02P,$%     @ P8934 X;I'J"
M P  %!$  !D   !X;"]W;W)K<VAE971S+W-H965T-#DN>&ULE9CM;ILP%(9O
M!7$!Q1\82)5$:C)-F[1)5:=UO]W$25 !9^ DW=W/&$H#/D[A3P#G/<?O.>%Q
M,/.++%^K@Q#*>\NSHEKX!Z6.]T%0;0XBY]6=/(I"?[.39<Z5OBSW074L!=^:
MH#P+"$)1D/.T\)=S,_98+N?RI+*T$(^E5YWRG)?_5B*3EX6/_?>!IW1_4/5
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
MX30Y2I,C-(XLUCE"0R#":2#$]1TB1)$K\'#$!*;8)LH )HX20 IAR@5Z5*R
M?%ZF@ L=HD]4?0>ZJT<R%2I^'@!V(+AEWX$^QX.+&! 5C^H>$!E/\N J!D3&
MH\('1,>3/+B, =.Q6_DP%O(T#ZYCP(0\*OQL?&(#<7B"P5U:,7&T?8KT=OQ<
M*W,E#5;[7FA%S%WLK*]-CV3OZ'<W;8/U@XIC44OOA2M]T]O[^,"Y8CK&\$%'
M=](]73\IV4&9X4R/1=O8M!/%FZYI"_K.<?D?4$L#!!0    ( ,&&4U"AO[]*
MH0,  -$0   9    >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;)68;6_:,!#'
MOTJ4#]#XSGFL *E039NT256G;:]3,! UB5EB2O?MYSR4!OO2AC<D,?\[_^\P
M/VQF)UD]UWLAE/-:Y&4]=_=*'6X]KU[O19'6-_(@2OW.5E9%JO1CM?/J0R72
M31M4Y!XR%GI%FI7N8M:./52+F3RJ/"O%0^74QZ)(JW]+D<O3W 7W;> QV^U5
M,^ M9H=T)WX*]>OP4.DG[YQEDQ6BK#-9.I78SMT[N+WG;4"K^)V)4SVX=YI2
MGJ1\;AZ^;>8N:QR)7*Q5DR+5EQ>Q$GG>9-(^_O9)W?.<3>#P_BW[E[9X7<Q3
M6HN5S/]D&[6?N['K;,0V/>;J49Z^BKZ@P'7ZZK^+%Y%K>>-$S[&6>=V^.NMC
MK6319]%6BO2UNV9E>SWU^=_"Z #L _ < .&' ;P/X.\!_H<!?A_@&P%>5TK;
MF_M4I8M9)4].U7V\A[1917#KZ^ZOF\&VV>U[NCVU'GU9!.C/O)<F4:]9=AH<
M:."L\'3V\Q1(3;%$*QPO)UC9BC"XE-P3DI VP<DZ>1O/+^H,Z 0^F<!O$_C#
M)C"S49TF:#5EJXE]!A 9Y=JR*. 1Q$;)MBP,HB2.:-<!Z3JP7 <8&JX[33B<
M!T(6@.':EODA(/=I.R%I)R3L&-U9AM8\J)O#S2;:,HA]'B-M)R+M1+8=X'2"
MF$P03U]5"9D@F?#Y)-8ZX @,$J,AM@QU.P:R"SO :!PPPE!L\H 2F78H$6<C
M9D;8!!.62R\:UIU$')EIQY9%,>"8(9)D=X"6H;&O(] 8@BLX!#2(P":1O6;
MA@>&B'%HMH70,?1AA*U 4P8HS%BKQA;QQ/Q6?R*Z-$,S!J9 IA<-ZP;.AG7W
M?FQ=DD31"&6 Q@Q0G!GA)M"@@2M( S1J8 IK@* ()BPPVV++(!S*+K<%-&MP
M"FL(D>^;=CX179JA68-36(,$1-!J#J'2/RLC'$::-&B3!H*QBFC4X!6H01HU
M. 4U:"/$C\VMT:I7#7^O1]B+-&-P"F,($8]&6(8T/G */M#& B8F.]#>HHR5
M3',#*6Z,?8(T-_ *;B#-#9S"#;2!$#!KST:H>)B,D)#3U.!3J$&)N+FA)40\
M&>D-IZG!IU"#VSR A)D;%$K% _.@Y0W.=86H=NV9N7;6\EBJYG@T&#V?R^^P
M.1<:XTNX776GZ_<TW6'_1UKMLK)VGJ32I\[V;+B54@EMDMUH>WN1;LX/N=BJ
MYC;2]U5WR.X>E#ST?R!XYW\Q%O\!4$L#!!0    ( ,&&4U!F?A85] $  & %
M   9    >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;'64VXZ;,!"&7P7Q &LP
MQT0$J=FJ:J56BK9J>^W $- :3&TG;-^^/A#$$N]-; ___-^,8[N8&'\5+8#T
MWGHZB(/?2CGN$1)5"ST13VR$07UI&.^)5$M^06+D0&J3U%.$@R!%/>D&ORQ,
M[,3+@ETE[08X<4]<^Y[P?T>@;#KXH7\/O'275NH *HN17. GR%_CB:L56ESJ
MKH=!=&SP.#0'_U.X/^9:;P2_.YC$:N[I3LZ,O>K%M_K@![H@H%!)[4#4<(-G
MH%0;J3+^SI[^@M2)Z_G=_8OI7?5R)@*>&?W3U;(]^+GOU="0*Y4O;/H*<S^)
M[\W-?X<;4"77E2A&Q:@POUYU%9+ULXLJI2=O=NP&,TZS_SW-G8#G!+PD8-N+
M!9G*/Q-)RH*SR>-V[T>B_^)PC]7>5#IHML)\4\4+%;V5280+=--&L^9H-?B=
M)EHT2/DO$.R$8&,0K0QP\(%!Y#2(C$'\KH)X4Z75)$8S6$T<Q(D;$SLQL0.3
M;#!6DZXQ49IG;DSBQ"0.3+K!) ^8>+?+=VY,ZL2D#DRVP:0/F"C,H]R-R9R8
MS(')-YC,@<'A!T<@=V)R!V:WP>0/1R!,DB#8G@&TNASZ[?E!^*4;A'=F4MTS
M<QL:QB0HR^!)N;7JN5L6%!JIIYF:<WOI[4*R<7[/T/*HEO\!4$L#!!0    (
M ,&&4U!*8G*1YP$  .X$   9    >&PO=V]R:W-H965T<R]S:&5E=#4T+GAM
M;'U4[6Z;,!1]%<0#U-A\-(L :4E5;=(F19W6_7;@$E -9K83NK>?;0BBX.T/
M]KV<<WR.,4X'+MYD#:"\]Y9U,O-KI?H]0K*HH:7R@??0Z3<5%RU5NA07)'L!
MM+2DEB$2! EJ:=/Y>6I[)Y&G_*I8T\%)>/+:ME3\.0#C0^9C_]YX:2ZU,@V4
MISV]P ]0/_N3T!6:5<JFA4XVO/,$5)G_&>^/L<%;P&L#@US,/9/DS/F;*;Z6
MF1\80\"@4$:!ZN$&1V#,"&D;OR=-?U[2$)?SN_JSS:ZSG*F$(V>_FE+5F;_S
MO1(J>F7JA0]?8,H3^]X4_AO<@&FX<:+7*#B3]ND55ZEX.ZEH*RU]'\>FL^,P
MZ=]I;@*9"&0FX.B_A' BA"L"&IW9J$]4T3P5?/#$^+%Z:LX$WH=Z,PO3M'MG
MW^FT4G=O>1P%*;H9H0ES&#%D@2$?$<<M(HEG"-(&9A?$Z8)8?KA<(4C< J%3
M(+0"T8<8>!5CQ,06TUE,] F39!7%@0IP$+C-1$XSD</,:L<.(R99+$,2'.Q6
M9ERH</</,['33+PQ@_'Z \>;S(\Q":.5F2TJ2:*-&;0X>>8F^$[%I>FD=^9*
M'V)[U"K.%6C%X$&+U?KRF0L&E3+31ST7XR\X%HKWT^V"YBLN_PM02P,$%
M  @ P8934(@9UK0Q P  DPX  !D   !X;"]W;W)K<VAE971S+W-H965T-34N
M>&ULE5?1;ILP%/T5Q <4;&,@51*I23MMTB95F[8]T\1)4 %GX#3=W\\VE"7X
MT"9]*-@Y]]YS#,?F3H^R?FYV0BCOM2RJ9N;OE-K?!D&SVHDR:V[D7E3ZEXVL
MRTSI8;T-FGTMLK4-*HN AF$<E%E>^?.IG7NLYU-Y4$5>B<?::PYEF=5_%Z*0
MQYE/_+>)[_EVI\Q$,)_NLZWX(=3/_6.M1T&?99V7HFIR67FUV,S\.W+[P*@)
ML(A?N3@V)_>>D?(DY;,9?%G/_- P$H58*9,BTY<7L11%83)I'G^ZI'Y?TP2>
MWK]E_V3%:S%/62.6LOB=K]5NYJ>^MQ:;[%"H[_+X672"N.]UZK^*%U%HN&&B
M:ZQDT=C_WNK0*%EV6325,GMMKWEEK\<N_UL8#J!= .T#*'DW@'4!K ]@Z;L!
M41<075J!=P%\$!"TVNUBWF<JFT]K>?3J]GW89^:U([=</ZZ5F;1/Q_ZFU[/1
MLR]S'K%I\&(2=9A%BZ$G&,8GYYBEBR$](M ,>AH4T5A0)YQ'T: $PO!SS+V+
M8?% S@/"1)@L@VO&; )V1B3&"2*8(+()HK,$R4!MB^$64UE,.-#Z'N*,!(<D
M.""1#DBTF/CC$C$L$8,2$YP@@0F2RU<ZA0E2EP$?K.,R==:1)#S4?X/U=G%)
MXL(>7%@:1J>P,]H32'L":(_XB838U^'E2T=&M@8"6-#AWD <N49L&(XJ)G '
MN",45&/#70:!1KQ+L'D)N\!\'>@";Q'L< (LSOFPBNO@C]8.6YD +_.QAXVM
M2N(KWA=L5I( %L[*(E Z4@=[FB!3CVPK!/N+3"Y72['!:.BRB =[P0*"Q@Y&
M[$(*7!C3D1386I1>H1:[A@+7N&H1B(W4P;ZAP#=CAS/%9J#\"K78#!0<7*Y:
M!.(C=;!C*#!#/$85FX&F5ZC%9J#@M''5(E""ZS#L&(;,,&)]ALW R.5J&38#
M0T?(\%3K0*<[,^5P8PY./K1+46]MU]-X*WFHE/G(/)GM.ZL[VU@-YI>ZXVH_
MX/^G:=NU;UF]S:O&>Y)*MP'V8WTCI1*::'BC*>YTA]@/"K%1YC;1]W7;)K4#
M)?=="QCT?>C\'U!+ P04    " #!AE-0_[83$7,"  "H!P  &0   'AL+W=O
M<FMS:&5E=',O<VAE970U-BYX;6Q]5=%NFS 4_17$>PO&QI"((!6B:9,V*>JT
M[=E)G( *F-E.TOW];$,H-6Y?@GTYY]QS;XQO=F/\15242N^U;3JQ\2LI^W40
MB$-%6R(>64\[]>;$>$NDVO)S('I.R=&0VB:(PA '+:D[/\],;,?SC%UD4W=T
MQSUQ:5O"_Q6T8;>-#_Q[X+D^5U('@CSKR9G^I/)7O^-J%TPJQ[JEG:A9YW%Z
MVOA/8+U--=X ?M?T)F9K3U>R9^Q%;[X=-WZH#=&&'J16(.IQI25M&BVD;/P=
M-?TII2;.UW?U+Z9V5<N>"%JRYD]]E-7&3WWO2$_DTLAG=OM*QWIBWQN+_TZO
MM%%P[43E.+!&F%_O<!&2M:.*LM*2U^%9=^9Y&_7O-#<A&@G11 #X4P(<"?"-
M@#XEH)& +$(PE&)ZLR62Y!EG-X\/_VY/]"$":Z2Z?]!!TVSS3K5'J.@UC_$J
M"ZY::,04 R::8<"$")3ZE")RI2BB!3UZGZ!<(G#\'K)U0+#;!'36"0T?SDT
MZ!9 3@%D!-"\44EH-6K Q ;3#8V*4H"L:I>H%0"6U'8)BJ(T_<!Q['0<.QP#
MR_& P;,T.$ZMWI=+$((XL0P[0/BCOP@[_6*'7^ND%'B1!:S@RCJPI0,%46([
M7J*B)$8KM^7$:3EQ6(:6Y621Y@&':6I9=J#BT/X2MPX4A!@CM^?4Z3EU>+:.
M:)$N#S*$P#H\Y1*5HM J;+L$/6  8LMQ,+NO6LK/9A8([\ NG=2?_2PZC9NG
M2-]W5KQ08VB8&F\RPPS[0?BY[H2W9U+=IN;..S$FJ3(9/BI_E1J;TZ:A)ZF7
MB5KS87@,&\GZ<2X&TW#._P-02P,$%     @ P8934'P@B9C9 @  < H  !D
M  !X;"]W;W)K<VAE971S+W-H965T-3<N>&ULA99M;YLP$,>_"N)]"S9^@"J)
MU"2:-FF3JD[;7KN)DZ "SL!)NF\_VU!*[4O[)MCF?W>_NQC[9A?5/G<'*77T
M4E=--X\/6A_ODJ3;'&0MNEMUE(UYLU-M+;29MOND.[92;)U1724X35E2B[*)
M%S.W]M N9NJDJ[*1#VW4G>I:M/^6LE*7>8SBUX7'<G_0=B%9S(YB+W]*_>OX
MT)I9,GK9EK5LNE(U42MW\_@>W:T1M@9.\;N4EVXRCFPJ3TH]V\FW[3Q.+9&L
MY$9;%\(\SG(EJ\IZ,AQ_!Z?Q&-,:3L>OWK^XY$TR3Z*3*U7]*;?Z,(_S.-K*
MG3A5^E%=OLHA(1I'0_;?Y5E61FY)3(R-JCKW&VU.G5;UX,6@U.*E?Y:->UX&
M_Z]FL $>#/!H@-B'!ME@D+T9D \-R&! /(.D3\759BVT6,Q:=8G:_N\]"KN+
MT!TQU=_815=L]\Z4IS.KYP7E=):<K:-!L^PU>*)!HR(QWL<0& JQQ($Y?A]@
M%2J8Q[ &) R&R, \,V>?32%0!CL@H /B')!WA6)>H7H-=9K&:;*,,D^U E28
M9YF7<*BB'*<%C$Q!9 H@<P^YU[!)&%84A4<<BGA!?>!01#@E,"\#>1G FWN\
M+(B2>K"?*M:AX@8SQ&%4#J)R -6KVI(#88H<^<4%9!DFN?='K0$921F^4N <
MI,Y#ZMPKSC+_M,"AX@9QZA<94&%:%!CF+4#> N!%'F\!E(\0_YN#5!SYAPRD
MFF[!=\@HA0_4%(#&_HF:AI]=BKS45H"*,NI# RI"^96S#5VY!1  G?G0Z-.M
M 4C\_;Z&-"R]@@O>*/<( Y\?\7%Q<(*B+ N+',IRDN8^=*BZ86BR@7KL9'+M
MUK+=NY:FBS;JU&A[>TU6Q[;IWG5-WOK2ME/N.G]ST_=B/T2[+YLN>E+:- 7N
MZMXII:6A3&\-W\&T?^.DDCMMA]R,V[X'ZB=:'8?^+AF;S,5_4$L#!!0    (
M ,&&4U"T*P><P@(  /P)   9    >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM
M;'66;6^;,!#'OPKB?8N? +M*(BU,TR9M4M5IVVLW<1)4P!DX2??M9PQ%Q#[>
M!-O\[^YW%W/VZJ;;M^ZDE(G>ZZKIUO')F/-3DG2[DZIE]ZC/JK%O#KJMI;'3
M]IATYU;)O3.JJX0@E"6U+)MXLW)KS^UFI2^F*AOUW$;=I:YE^V^K*GU;QSC^
M6'@ICR?3+R2;U5D>U4]E?IV?6SM+)B_[LE9-5^HF:M5A'7_"3P5FO8%3_"[5
MK9N-HSZ55ZW?^LFW_3I&/9&JU,[T+J1]7%6AJJKW9#G^CD[C*69O.!]_>/_B
MDK?)O,I.%;KZ4^[-:1WS.-JK@[Q4YD7?OJHQH32.QNR_JZNJK+PGL3%VNNK<
M;[2[=$;7HQ>+4LOWX5DV[GD;_7^8P09D-""3P5"<10,Z&E#/(!G(7*J?I9&;
M5:MO43O\6V?9;PK\1&TQ=_VBJYU[9[/M[.IUDW*V2JZ]HU&S'31DIB'WBB)4
M9.DD22S 1$% "N+LZ3P"IK #"CJ@S@&[2R/UTA@TJ=,T3H,1P5ZR1:CB@@N8
MA8$L#&#)/)9!D\U9!$7<8X%43&0P3 K"I !,[L&D01A".<,>3*C"N1 +E<E
MF R \7+>9D&8E-*,>C"ABF5LMG'O8'(0)@=@A >3!V$>L" ^#*1";*$R'(3A
M(8Q '@P/*X,9\U1%J&(IHPM?HP!A! #C[8:M"'/F#&&O@ 4@RU&>$A@'([A'
M(0"(^$T*A:$$R5*_4P$RSM*%^N"%IHD#(.%_X:/F+A 3).B<D SE"YL'P^T3
MDX 'XZ! !-BF69[Y0(",BMDVNP>"VS$&^K&@/A %_C'!>5 B0,=S0A;Z((:[
M,@;:L@A..A9T_P?;5EB !.EL.\0>4C([AOM[T0_9'LNFBUZUL2>Z.W</6AME
M?:)'Z^UDKV+3I%('TP]S.VZ'^\@P,?H\WK62Z<*W^0]02P,$%     @ P893
M4&U='=Y: @  >P<  !D   !X;"]W;W)K<VAE971S+W-H965T-3DN>&ULC57;
MCILP$/T5Q =@S"T0$:1<5+52*T5;M7UVR"2@!4QM)]G^?6W#L@2<55Z"/9QS
MYLP0>](;9:^\ !#66UTU?&470K1+A'A>0$VX0UMHY)L39341<LO.B+<,R%&3
MZ@IYKANAFI2-G:4ZMF=92B^B*AO8,XM?ZIJP?QNHZ&UE8_L]\%*>"Z$"*$M;
M<H:?('ZU>R9W:% YEC4TO*2-Q>"TLM=XN<.>(FC$[Q)N?+2V5"D'2E_5YMMQ
M9;O*$520"R5!Y.,*6Z@JI21]_.U%[2&G(H[7[^I?=/&RF /AL*75G_(HBI4=
MV]813N12B1=Z^PI]0:%M]=5_ARM4$JZ<R!PYK;C^M?(+%[3N5:25FKQUS[+1
MSUOW)DIZFIG@]01O(.#H4X+?$_P/0O I(>@)P82 NE)T;W9$D"QE]&:Q[O.V
M1/V+\#*0W<]54#=;OY/MX3)ZS<(D3-%5"?6838?Q1A@\()!4'U)XIA0;;T;W
M[A-LYXAHXF%G@$1F$[ZQ3E_S_;LZ'P@$1H% "P1W HM)HSI,K#&-Q@1.;$X2
M&I.$AB3QI%GA+ EV$G.2R)@D,B1))I5TF&24Q,../W$2S9Q$SL3MKL.$(XS_
MH.T+H]G%W.S"-0O$1H'X^0^?& 62F8/(=2?M2F;MBD/',V?!KOD@NH9*'YPS
M_. LX^=KQ<:SNL;>$]7VH/&']YVI532Z@6I@9WV[<RNGET:H@SR*#A-DK0?(
M)+Y1DT7?;!\RW5CZ0=BY;+AUH$+>C_H6.U$J0'IT'?F7*^0D'#85G(1:+N2:
M=>.@VPC:]J,.#?,V^P]02P,$%     @ P8934+,<]XFW @  JPD  !D   !X
M;"]W;W)K<VAE971S+W-H965T-C N>&ULA99M;YLP$,>_"N)]BPW&0)5$*HFF
M3=JDJE.WUV[B)*B ,]M)NF\_VU!*S"5[$[#SO[O?'7ZXV5G(-[7G7 ?O3=VJ
M>;C7^O 016J]YPU3]^+ 6_//5LB&:3.4NT@=)&<;9]3448P0C1I6M>%BYN:>
MY&(FCKJN6OXD W5L&B;_EKP6YWF(PX^)YVJWUW8B6LP.;,=_<OUR>))F% U>
M-E7#6U6)-I!\.P\?\<,*.P.G^%7QLQJ]!S:55R'>[.#;9AXB2\1KOM;6!3./
M$U_RNK:>#,>?WFDXQ+2&X_</[U]<\B:95Z;X4M2_JXW>S\,\##9\RXZU?A;G
MK[Q/* V#/OOO_,1K([<D)L9:U,K]!NNCTJ+IO1B4AKUWSZIUSW/O_\,,-HA[
M@W@PP/2F0=(;))\&Y*8!Z0V(9Q!UJ;C:K)AFBYD4YT!VG_? ["K"#\14?VTG
M7;'=?Z8\RLR>%A3A672RCGI-V6GBD>93$1GO0X@8"E'&$_/X,L!RJJ#II60%
M2"@,D8!Y)LX^&4/@*PX(Z( X!^2B4%X>9:>A3M,Z35$47JY3#<8Q];*%1#B!
M<5,0-P5P$P\WG42YR_Q/ VER;X&L !$A,"T%:2E 2SQ:.@F2>@DMIQ+BKR/
MRY7%G(&D&4#JQ2BS_Y-.)<@#O:6XX,Q!SGS"B;/<X^PTZ7BYT@)YJN54E9$"
M91[N5$6*?%3]"^0"1"Z TGH;HRRF*PV3./<W&21+$4K](@,Z2J]M-(S@$Q0!
MW)E_A*+IT9!F7G9+0)6CU-]M@"I#U_8;OG+L8P#:7Q^]:/Q1[]*$8I]Z*O/K
M?%/2\4:C&ZOA<N>Z 16LQ;'5]N ?S0X=QV-L;SQOOK2=B+L)/]UT;<P/)G=5
MJX)7H<U]ZFZ]K1":&T)T;]CVIG,:!C7?:ON:F7?9M0_=0(M#WQI%0W^V^ =0
M2P,$%     @ P8934!%LELFG 0  FP,  !D   !X;"]W;W)K<VAE971S+W-H
M965T-C$N>&UL;9-M;YLP$,>_BN4/$(-#TS4"I*;3M$F;%'7:]MJ!(UCU [.=
MT'W[G0U%:<4;[#O_[W</V.5HW8OO 0)YU<KXBO8A#'O&?-.#%GYC!S!XTEFG
M14#3G9D?'(@V!6G%>);MF!;2T+I,OJ.K2WL)2AHX.N(O6@OW[P#*CA7-Z9OC
M69[[$!VL+@=QAI\0?@U'AQ9;**W48+RTACCH*OJ8[P]%U"?!;PFCO]F3V,G)
MVI=H?&LKFL6"0$$3(D'@<H4G4"J"L(R_,Y,N*6/@[?Z-_B7UCKV<A(<GJ_[(
M-O05_41)"YVXJ/!LQZ\P]W-'R=S\=[B"0GFL!',T5OGT)<W%!ZMG"I:BQ>NT
M2I/6<3JY+^:P]0 ^!_ E@*<\;$J4*O\L@JA+9T?BIMD/(O[B?,]Q-DUTIE&D
M,RS>H_=:[[*'DETC:-8<)@V_U>39HF'(7Y+PU20\ 8IW@'P=L%T%;!-@^P[
MUP'%*J!8J6#[H<U)\Y T)FGX9O<A";N9:[RV/X0[2^/)R0;\16F0G;4!D)=M
M\"[T^%(60T$7XO8>]VZZ+Y,1[# _!;:\Q_H_4$L#!!0    ( ,&&4U"XY?"H
M3 ,  $L/   9    >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;)57[6Z;,!1]
M%<0#!'Q-^*B22$VF:9,VJ=JT[3=-G 05< 9.T[W]S$=I@H^CI#\*..?>XV/?
M@[FSDZQ>ZKT0RGDK\K*>NWNE#@^>5Z_WHDCKB3R(4O^RE561*OU8[;SZ4(ET
MTP85N4>^'WI%FI7N8M:./56+F3RJ/"O%4^74QZ)(JW]+D<O3W&7N^\"/;+=7
MS8"WF!W2G?@IU*_#4Z6?O"'+)BM$66>R="JQG;N/[&'%PR:@1?S.Q*D^NW<:
M*<]2OC0/7S=SUV]F)'*Q5DV*5%]>Q4KD>9-)S^-OG]0=.)O \_OW[)];\5K,
M<UJ+E<S_9!NUG[NQZVS$-CWFZH<\?1&]H*GK].J_B5>1:W@S$\VQEGG=_G?6
MQUK)HL^BIU*D;]TU*]OKJ<__'H8#J ^@(8!%5P-X'\ _ H)6?#>S5NJG5*6+
M625/3M7MUB%MBH(]<+V8ZV:P7;OV-ZVVUJ.OBY %,^^U2=1CEAV&SC!L0'@Z
M^T!!B&))1CA=$JQ,1#C%#!R*X&T\OQ!A21# !$&;(+A($(Y6H<.$+:9L,9SY
MS1\FFD*B*2"*1D13@X@HN<(40J80,,4CI@X3G3&Q.)X$(]@*P,)D0@&>3@2G
M$X'I)#A!#!/$M^]Q A,D-^QQ8BQ]Y)-UX9F/+>7?L,D]Z&*7_2N;S"SV9287
M^6,N!+)8F$$//S("*6C,@T#<PH.=S+B1@B>6.F'8RRRXO5(8=BDS;1KXQJJ:
M()[8>+!'&3 I&6_?T*@41I>5TMD4 :-K)86=RH!5:3J>5 >*S[F">!)9F+"E
M60R8QI:$(!L/=CXSK<]CR]N+L*?)O[VH"%N53!?RA(_4(E <6GBP50FY,+:D
MP"ZD.PY4PBXD\T@%:@'(JA9;E<")2I87!F$74GB'6NP9,CT#U *052UV#)EF
MX(FMDK$9*+E=+<=FX.8!9ZJ%($L9<NP8#LXM;GF9<6P&3G>HM7Q<HB/)4(M
M-K78,1Q\A'++*<VQ&?CT#K78#-P\DH!: (K&E>R=M2"%J'9MMU8[:WDL5?.Q
M?S8Z=(2/U+0PH_&E[A2[ONXC3==F?D^K75;6SK-4ND%JVYBME$KH.?H3O19[
MW=D.#[G8JN8VTO=5U]YU#TH>^M;5&_KGQ7]02P,$%     @ P8934.K-M<M*
M @  S@<  !D   !X;"]W;W)K<VAE971S+W-H965T-C,N>&ULC57MCILP$'P5
MQ ,<GR')B2!=@JI6:J7HJK:_';()Z RFMA.N;U_;$(XXVS1_@KW,S,[:83?M
M&'\3)8!TWFO:B)5;2MD^>YXH2JB)>&(M-.K-@?&:2+7E1T^T',C>D&KJA;Z?
M>#6I&C=+36S+LY2=)*T:V')'G.J:\#]KH*Q;N8%[";Q6QU+J@)>E+3G"=Y _
MVBU7.V]4V5<U-*)BC</AL')?@N<\\#7!('Y6T(G)VM&E[!A[TYLO^Y7K:T=
MH9!:@JC'&39 J592/GX/HNZ84Q.GZXOZ)U.\*F9'!&P8_57M9;ER%ZZSAP,Y
M4?G*NL\P%#1SG:'ZKW &JN#:B<I1,"K,KU.<A&3UH**LU.2]?U:->7:#_H6&
M$\*!$(Z$(+E+B 9"]$&([Q+B@1!;!*\OQ9Q-3B3)4LXZA_?7VQ+]+PJ>8W7Z
MA0Z:PS;OU/$(%3UG212FWED+#9AUCPDGF&!$>$I]3!%B*=;A#=U*L+E%)+-K
M2(Y $MQ$A-89&7XTY0<S7"!&!6(C$%\=5&0=%(:)\20S-,GL1B!:+G&!!!5(
M'B]SC@K,D1*LNUC?8J+EPKK2!S#Y?<R5V05J=H&832RS&&9NF<4PMED,\X^K
M6:)FE[<"L6^9Q3"!91;#6!]4CF$BW*QJVFA?\!&)V&X,""BR0)M'0/E_0+UC
M;]+4:N!',S"$4[!3(W5OF$3'H?02ZJ9HQ==Z6)EF^2'33[IOA!^K1C@[)E7+
M-8WQP)@$Y=%_4E]GJ8;KN*%PD'HY5VO>3YA^(UD[3$]O'.'97U!+ P04
M" #!AE-0Y!>ST[("  "="0  &0   'AL+W=O<FMS:&5E=',O<VAE970V-"YX
M;6R-EMN.VC 0AE\ERGU);.< *T""5%4KM=)JJ[;7!@Q$F\2I;6#[]K6=;#:Q
MAVYOB&W^F?G&<6:\O''Q+,^,J>"EKAJY"L]*M0]1)/=G5E,YXRUK]#]'+FJJ
M]%2<(MD*1@_6J*XB',=95-.R"==+N_8HUDM^4579L$<1R$M=4_%GRRI^6X4H
M?%UX*D]G91:B];*E)_:=J1_MH]"S:/!R*&O6R)(W@6#'5;A!#P5*C(%5_"S9
M38[&@4EEQ_FSF7PYK,+8$+&*[95Q0?7CR@I65<:3YOC=.PV'F,9P/'[U_LDF
MKY/94<D*7OTJ#^J\"N=A<&!'>JG4$[]]9GU":1CTV7]E5U9IN2'1,?:\DO8W
MV%^DXG7O1:/4]*5[EHU]WGK_KV:P >X-\&" LG\:D-Z O!G8W8PZ,IOJ1ZKH
M>BGX+1#=VVJI.13H@>C-W)M%NW?V/YVMU*O7=9:DR^AJ'/6:;:?!(PT:%)'V
M/H3 4(@M]LSQ-$#A*[(4CD# )(BU)Y,D,MA! CI(K(-DXB!W=J'39%;36 TA
MB9.(KXEAC!3$2 &,N8.1>B%PFCD8OH:0._N1@2 9 +)P0#(OR(?<!?$U=_8C
M!S%R'R.-'8S<QT#N:P$T&.:8@QQS@ ,Y'',O1AH[K(6O&1^A"<@"!%GX!SV]
MDPF*X>\]!G(A[@??B?+Q(<-HAIW"4/2Z]/WWB^Y4'P30)"Y-7Z/B,4Z"9FCA
MXD!"P[VX P76JPW" )17$S$<"WE[A/_W&T!P<4,$P,E<' +A+&:YA_.^< H%
M%TP$5,S4K9B]:'*,")JYN@+238];AQ2-FEK-Q,GV?QGL^:51IGV,5H<[Q@:;
MINBL;\W=PS;+-S?=Q>4;%:>RD<&.*]UR;6,\<JZ8QHQG^IR?]5UIF%3LJ,PP
MUV/171BZB>)M?QF*AAO9^B]02P,$%     @ P8934&>ERJIO P  _PT  !D
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
MJO>B&QO=0?&FGXAH&,OY/U!+ P04    " #!AE-0BU'3/)P"  "["   &0
M 'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6R-5EUOFS 4_2N(]Q7\P5>51&J"
MIDW:I*I3MV<W<1)4P,QVDN[?SS:44G-;Y05L<\ZYYUZ,+XN+D,_JR+D.7IJZ
M5<OPJ'5W&T5J>^0-4S>BXZUYLA>R8=I,Y2%2G>1LYTA-'>$X3J.&56VX6KBU
M>[E:B).NJY;?RT"=FH;)?VM>B\LR1.'KPD-U.&J[$*T6'3OP7UP_=O?2S*)1
M95<UO%65: /)]\OP#MV6"%N"0_RN^$5-QH%-Y4F(9SOYOEN&L77$:[[55H*9
MVYEO>%U;)>/C[R :CC$M<3I^5?_JDC?)/#'%-Z+^4^WT<1GF8;#C>W:J]8.X
M?.-#0DD8#-G_X&=>&[AU8F)L1:W<-=B>E!;-H&*L-.REOU>MNU\&_5<:3, #
M 8\$E'Y*( .!O!'HIP0Z$*A'B/I47&U*IMEJ(<4ED/WK[9C=1>B6FNIO[:(K
MMGMFRJ/,ZGF59L4B.ENA ;/N,7B"02,B,NIC" R%6.,9';\/L)DCTN0]I 0@
M*6R"@'D2QR=3?A[# A04H$Z 3HM B5>H'I,X3.LP25&DF9<M@,(9C;V$YRB2
M$9K#EA/0<C*SG.;(L]QCTDF8+[C(D;<%-@",8)I[J94 C,8IIK#K%'2= JZ]
M#;-.9W%(C";%Z4W/43C&B??2RCG*I)9]L+DRT'(&6":P0 X*Y-?OS@(4**[8
MG<4L493$L?\M BB2Y%YIRSFJH"B!':,8/GGBF><,?Z#PP=F%KB\; L^F.X2O
M*-P FGZ+E!;^$;4!8*1 B5?@$H#AK"#^?HDF)WC#Y<%U1Q5LQ:G5]B"<K(X=
M^,XU8&]];3NSZPQO,GU;_\GDH6I5\"2TZ2^N"^R%T-RXC&^,OZ/YDQ@G-=]K
M.\S,6/;MM)]HT0V_"M'XO[+Z#U!+ P04    " #!AE-0J;_E.:D#  "P#P
M&0   'AL+W=O<FMS:&5E=',O<VAE970V."YX;6R-EVV3FC 0Q[\*PP<0$D(@
M-^K,Z3VH9V=NVFG[FM.H3(%8P+/]]@T0.5C6J_?B@/C[[VZRFZ?Q6>6_BH.4
MI?4G3;)B8A_*\GCG.,7F(-.H&*FCS/0O.Y6G4:D_\[U3'',9;6M1FCC4=;F3
M1G%F3\=UVVL^':M3F<29?,VMXI2F4?YW)A-UGMC$OC1\C?>'LFIPIN-CM)??
M9/G]^)KK+Z>ULHU3F16QRJQ<[B;V/;E;$UH):N)'+,]%Y]VJNO*FU*_J8[F=
MV&X5D4SDIJQ,1/KQ+N<R22I+.H[?QJC=^JR$W?>+]:>Z\[HS;U$AYRKY&6_+
MP\0.;6LK=]$I*;^J\T*:#OFV97J_EN\RT7@5B?:Q44E1_[<VIZ)4J;&B0TFC
M/\TSSNKGV=B_R' !-0+:"K3OSP2>$7@? O:I@!D!NU7@&X%_JX ; ;]5$!A!
M<*L@-(+P5H$P G&K@+B7S+D?$OZYI$TVN=G+)=V$ HG3%%9=J0]1&4W'N3I;
M>3/9CE$UI\F=5FGC56M=^_6/NEH+W?H^Y2$;.^^5)</,&H9V&,\/^\QJR)"6
M<'0(;1P4C6-&!WK:]S ?$CST^\S#D %]><2L\#[SA## T?,0\3CI,PO,5=!G
MEA@#A_:_0_/R_X#7",+Q!'EXH7BU :\7J< M,-P"JRVPCH5 @$IK$+]&LB9_
M/! NJ 2$<CU(/0PICP@!/#X.*1IX#*3@";/E^R -SP@5"@HJ<(%0@L#B62)4
M$%*0U=60(HS[%%39"X8%C(/XUPC&A1]<F<@^GF5_6">=U/0L<-P"']0)%V!X
M5@W#>T/-&2B!%XQB#$X-A IT$> Q!WC, =)KBEL(<0LATFL/]#H<1%JE&W0:
M@7@ "GJ-0.):EP4>L$ "ACN'&+AA;N"!]7:.432$\WE(>2(D8(@>,<J'^\03
M:@L6V3,6ET_!4"[0Z.&L7Z(>X4BL,%O$A1E&*0I&8HUYI.S*HE^=5M#C@3LH
M[/#*;";73AAD4"@AG,Z&";K!CN#N\()2\+2R1B@V\OTK0>/'D7M"AT&#Y7)F
MF*XC,B(@67-#]5954-F((7<$RNP1A?06W/L#98YJX+ ^HY0 I;G *7B>P2FX
M;2&4-QHL9#@%5S*$8B,/KKU.YT"<RGQ?7_T*:Z-.65F5=Z>UO5[>U[=+T#XC
M=TN"M*^JZVA] /\PW]QEOT3Y/LX*ZTV5^B!?G[5W2I52!^^.=%D<]/6Y_4CD
MKJQ> _V>-W?(YJ-41W,_=MI+^O0?4$L#!!0    ( ,&&4U#'8A49[@$  -L$
M   9    >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM;'U4VXZ;,!#]%8L/6(?+
MTC0"I$VBJI5:*=JJ[;,#PT7K"[6=L/W[VL9A68+V!7O&YYRYX'$V"/FB6@"-
M7AGE*@]:K?L=QJIL@1'U('K@YJ06DA%M3-E@U4L@E2,QBJ/-)L6,=#PH,N<[
MR2(3%TT[#B>)U(4Q(O_M@8HA#\+@YGCNFE9;!RZRGC3P$_2O_B2-A2>5JF/
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
MN#.3O#+>6Y7'68%NEFC!G&8,WF#B%8$,^RJ!?1(G_"X\31(_0>+-,7$$R88
MX]1/</ 2'!S!X;\B\UV1,R9U&#YC<);[55*O2NI1>=RII.]4DD.6^54RKTKF
M4?FP4_%@<.07R;TBN8<@WHGX,'@G@C;/D('L7 .JH!97[II_XUU[_ F[9_P/
M/@^(;T1V U?!16C3#.[)MD)H,*E$#^9">S.35H-"J^TV-WLY=^9L:#$N0P>M
MDZ_Z"U!+ P04    " #!AE-0V630,"<"  "5!@  &0   'AL+W=O<FMS:&5E
M=',O<VAE970W-"YX;6QUE=N.FS 0AE\%<=\%S#DB2)M=5:W42M%6VUX[R22@
M-9C:3MB^?6W#4@J3&WR:^;\98X^+GHLW60$HY[UAK=RZE5+=QO/DL8*&R@?>
M0:M7SEPT5.FAN'BR$T!/UJEA'O']Q&MHW;IE8>?VHBSX5;&ZA;UPY+5IJ/BS
M \;[K1NX'Q,O]:529L(KBXY>X >HUVXO],B;5$YU ZVL>>L(.&_=QV"S"ZR#
MM?A90R]G?<>D<N#\S0R^GK:N;R("!D=E)*AN;O $C!DE'<?O4=2=F,9QWO]0
M_VR3U\D<J(0GSG[5)U5MW<QU3G"F5Z9>>/\%QH1BUQFS_P8W8-K<1*(91\ZD
M_3K'JU2\&55T* U]']JZM6T_K"31Z(8[D-&!3 YDR&4 V<B?J:)E(7COB&'S
M.VK^<; A>F^.9M)NA5W3P4L]>RM3$A;>S0B--KO!ALQLXO"?C:?U)PA!(<0*
MA#,!0F)<($0%0BL0_1=!M(ARL(FM33MDDF013HE02H10X@5EL$EFE(1$"4Z)
M44J,4)(%)5Y1PCSQ<4J"4A*$DBXHR8I"<G+GQZ8H)44HV8*2KBE1FN&4#*5D
M""5?4+(UQ8\(3LE12KZBI&1YQO(U15^%.UL6^/B-\Q'0\IB-1G/2)Q*0.\<Y
MN'.W X2T/&JCT?S>D)#X^8+DS0J**=C?J;C4K70.7.G:9"O(F7,%6M)_T&*5
M?B.F 8.S,MU4]\50*(>!XMWX"'C32U3^!5!+ P04    " #!AE-0O2S". $"
M  "_!0  &0   'AL+W=O<FMS:&5E=',O<VAE970W-2YX;6QUE-N.FS 0AE\%
M\0!K,*<0 5*S5=5*K11MU?;:@2&@-9C:3MB^?6U#$ +G!I_^^;\9&SL;&7\7
M#8!T/CK:B]QMI!R."(FR@8Z(%S9 KU9JQCLBU9!?D1@XD,H$=11ASXM11]K>
M+3(S=^9%QFZ2MCV<N2-N74?XOQ-0-N:N[SXFWMIK(_4$*K*!7.$GR%_#F:L1
M6ERJMH->M*QW.-2Y^\D_GE*M-X+?+8QBU7=T)1?&WO7@6Y6[GDX(*)12.Q#5
MW.$5*-5&*HV_LZ>[('7@NO]P_V)J5[5<B(!71O^TE6QR]^ Z%=3D1N4;&[_"
M7$_D.G/QW^$.5,EU)HI1,BK,UREO0K)N=E&I=.1C:MO>M./L_PBS!^ Y "\!
M>*IE IG,/Q-)BHRST>'3W@]$'[%_Q&IO2CUIML*LJ>2%FKT7"4XR=-=&L^8T
M:?!*$\3!HD'*?X%@*P0;@V!E@'%D-PBL!H$Q"-<&P2;)21(926\D49J&=DAH
MA80[2!2$&\JDB=<4/XSME,A*B2R4:$.)=I0@39Y08BLEME#B#27>4?STV;$D
M5DIBH6Q_GF1/\>,GYW*P4@X62KJA''84[ ?83DFME'1'\>,M)=W]8]@+5A5/
M&+2Z>_II^T'XM>V%<V%276-SV6K&)"A'[T69->HU7084:JF[B>KSZ4V9!I(-
M\W.)EC>[^ ]02P,$%     @ P8934/.>6]O[ 0  O@4  !D   !X;"]W;W)K
M<VAE971S+W-H965T-S8N>&UL=93=CILP$(5?!?$ :S#_$4%JMEJU4BM%6[6]
M=F (: UF;2=LW[ZV(8@ES@WVF#/GFS'8^<CXFV@ I//1T5[LW4;*88>0*!OH
MB'AB _3J3<UX1Z0*^1F)@0.I3%)'$?:\&'6D[=TB-VM'7N3L(FG;PY$[XM)U
MA/\[ &7CWO7=V\)K>VZD7D!%/I S_ +Y>SAR%:'%I6H[Z$7+>H=#O7>_^+M#
MIO5&\*>%4:SFCN[DQ-B;#KY7>]?3!0&%4FH'HH8K/ .EVDB5\3Y[N@M2)Z[G
M-_<7T[OJY40$/#/ZMZUDLW=3UZF@)A<J7]GX#>9^(M>9F_\!5Z!*KBM1C))1
M89Y.>1&2=;.+*J4C']/8]F8<9_];FCT!SPEX2<!3+Q/(5/Z52%+DG(T.G_9^
M(/H3^SNL]J;4BV8KS#M5O%"KUR+!:8ZNVFC6'"8-7FFB(%@T2/DO$&R%8&,0
MK PPCNP&@=4@, ;AIPK"3963)C*:WFC\(/3ME-!*"2V4:$.9-/$G2H+ME,A*
MB2R4>$.)[BFA]X 26RFQA9)L*+&%$CR@)%9*8J%L_Y[$0HD?4%(K);50L@TE
MO:.D46*'9%9(=@?QXRTDN_O%DC2.-Q2T.GKZ9OM)^+GMA7-B4IUB<]9JQB0H
M0^])>37J,ET""K74TT3-^72E3(%DPWQ;HN7*+OX#4$L#!!0    ( ,&&4U!C
ME+-*(@(  #4&   9    >&PO=V]R:W-H965T<R]S:&5E=#<W+GAM;(U5VXZ;
M,!#]%<0'Q-QS$2!M$JU:J96BK;I]=L@$T-J8M9VP_?O:AK"$6*OF(?8,YYRY
M& ]IQ_B;J "D\T%)(S*WDK+=("2*"B@6"]9"HYZ<&:=8*I.72+0<\,F0*$&!
MYR6(XKIQ\]3X#CQ/V462NH$#=\2%4LS_;H&P+G-]]^9XJ<M*:@?*TQ:7\ OD
M[_; E85&E5--H1$U:QP.Y\Q]\C?[E<8;P&L-G9CL'5W)D;$W;7P_9:ZG$P("
MA=0*6"U7V $A6DBE\3YHNF-(39SN;^K/IG95RQ$+V#'RIS[)*G-7KG.",[X0
M^<*Z;S#4$[O.4/P/N )1<)V)BE$P(LR_4UR$9'104:E0_-&O=6/6;M"_T>R$
M8" $(\%/OB2$ R'\)$1?$J*!$,T(J"_%]&:/)<Y3SCJ']Z?;8OT2^9M(=;_0
M3M-L\TRU1RCO-5\&ZQ1=M=" V?:88(+Q1P12ZF.(P!9B&SS0@_L NT=$$M]#
M]A9(8D\BM-89&GXXK3/T[ *152 R M&=@#]KE T3V(/$UB"Q12"<!>DQ*X-I
M^M/P%[-V[1Y!ZT7H37^SW/>/C.5B;<\]L>:>/.0>KB.[P-(JL/S_(UI9!5:6
M[D6S[MDP\2P(FEP>"KPT@TDX!;LT4K^#$^\X^YX"??EF_JV:B?T(^Y3I!^I/
MS,NZ$<Z1276US04\,R9!I>@MU%%4:H:/!H&SU-NEVO-^DO6&9.TPI-'XI<C_
M 5!+ P04    " #!AE-0'BDLHYT!  !8 P  &0   'AL+W=O<FMS:&5E=',O
M<VAE970W."YX;6QM4]M.XS 0_17+'X!3!U)4)9$H"+'2KE2!=GEVDTECX4NP
MW8;]>\9.B KJ2^;B,V?.C)URM.[-]P"!?&AE?$7[$(8-8[[I00M_90<P>-)9
MIT7 T!V8'QR(-A5IQ7B6%4P+:6A=IMS.U:4]!B4-[!SQ1ZV%^[\%9<>*KNA7
MXED>^A 3K"X'<8 7"'^'G<.(+2RMU&"\M(8XZ"IZM]IL\XA/@'\21G_FDSC)
MWMJW&/QJ*YI%0:"@"9%!H#G!/2@5B5#&^\Q)EY:Q\-S_8G],L^,L>^'AWJI7
MV8:^HK>4M-")HPK/=GR">9X;2N;A?\,)%,*C$NS16.73ES1''ZR>65"*%A^3
ME2;9<3HIKN>RRP5\+N!+ 2_2+%.CI/Q!!%&7SH[$3;L?1+SBU8;C;IJ83*M(
M9RC>8_94K_.B9*=(-&.V$X9_PZP7#$/^I0F_V(0G@OR,@.>KRP3Y18(\$5Q_
M4W#[0^6$*1+&)$SVHP4[6TI\<W^$.TCCR=X&W&_:0F=M &3+KO B>WSF2Z"@
M"]%=H^^FRYZ"8(?Y';/E9ZH_ 5!+ P04    " #!AE-0[W[?+T@"   U!P
M&0   'AL+W=O<FMS:&5E=',O<VAE970W.2YX;6R-56&OFC 4_2N$'R"T(,(+
MDJC+LB5;8MZRM\\5KT)>H:RM\O;OUQ9D"'71#])>SCWGWJ.]35O&WT4!()V/
MBM9B[192-B^>)_("*B(6K(%:O3DQ7A&IMOSLB88#.9JDBGK8]R.O(F7M9JF)
M[7F6LHND90U[[HA+51'^9PN4M6L7N;? :WDNI YX6=J0,_P ^;/9<[7S!I9C
M64$M2E8['$YK=X->=@CK!(-X*Z$5H[6C6SDP]JXW7X]KU]<5 85<:@JB'E?8
M :6:2=7QNR=U!TV=.%[?V#^;YE4S!R)@Q^BO\BB+M1N[SA%.Y$+E*VN_0-_0
MTG7Z[K_!%:B"ZTJ41LZH,-].?A&253V+*J4B']VSK,VS[?EO:?8$W"?@(2%$
M_TT(^H1@2,!=\UUEIM5/1)(LY:QU>/=K-43_*=!+H,S,==!X9]ZI;H6*7K-5
MD*3>51/UF&V'P2,,&A">8A\DL$UBBV?IJ]"_E]C-,4$4V$4":Q^!(0CN1!Y4
M&5H)0D,0WA'@B1$=)C*8VF BN\32*K&<283)Q(AMAXE'$MA?Q!.W+* %ME<2
M62N)9I4L?=].L+(2K)ZW.[82Q!:[@XD7\<SN!Q*)52)YPNYDYB3"BVAB]QST
MT&[DVT^9;S$\?$#QX*"BYRU'UH.X0?@)1WK0N-MX@9*[ST35&PV;"OC9S&7A
MY.Q22WVH1]%A]F_,Z)_$M_I.,$/L'TUWH7PG_%S6PCDPJ4:A&5@GQB2HBOV%
M.@Z%NL.&#863U,N56O-ND'<;R9K^DO*&FS+["U!+ P04    " #!AE-03=*6
M9)X)  #]/   &0   'AL+W=O<FMS:&5E=',O<VAE970X,"YX;6R56]MRVT@.
M_167WF?4Z'NG;%?%F?4D%J<J-5N[^ZS8]*5&%Z^DQ+-_OZ1$.R: (Y$OMB6?
M;H(@<(#3W3Q_66_^VC[6]>[L[^5BM;V8/.YVSQ^FT^WM8[V<;W]=/]>KYC_W
MZ\UROFL^;AZFV^=-/;_;#UHNIM:8.%W.GU:3R_/]=U\WE^?K[[O%TZK^NCG;
M?E\NYYO_7=6+]<O%A":O7_SY]/"X:[^87IX_SQ_J?]:[?SU_W32?IF^SW#TM
MZ]7V:;TZV]3W%Y./]*$B"NV(/>3?3_7+]MW?9^V]?%NO_VH_?+F[F)C6I'I1
MW^[:.>;-KQ_UIWJQ:*=J#/EO-^OD[:+MP/=_O\Y^O;_[YFZ^S;?UI_7B/T]W
MN\>+29Z<W=7W\^^+W9_KE\]U=T=A<M;=?E7_J!<-O+6DN<;M>K'=_SR[_;[=
MK9?=+(TIR_G?A]]/J_WOEV[^UV'Z -L-L&\##LZ! UPWP/T<X(\.\-T /W1
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
M+D'=_KW'S+Y%Z)Z:ZF_LIBNV>V;*TYC=\T((.HO.UE''+%L&#QC4$Y'QWH?
M4(@E'IGCVP"K,<'9+;(&$ Z+(&">Q-F3FSP9[(""#JAS0(<.*/<*U3+,,55;
M*,8)%UZZ$(9IZE5E#6 <"Y; JAFHF@&J/=$MP@=A/C&<Q+$G&L!(RGUL#6&,
M#; ;T1P4S<>BA5]J/HI#J$">9@ B(O$4CR&>3M18@'(%(-=3*T8Q$$L3XDE9
M01A+A%]C ..$LHGSD("BD[%H-G$>4M!!^O$#A6*X]<0?.%(=-$P6QPEEWEN\
M CB4(IYXK\0:Y$2"IZ1/=$T$_.=BP@78%1\0_H\"PCT-$4!%XA>0 "<RYM3O
MP1"'<2K\K@1RIM 3;Q^"NRF"VJFOG$*1*&6^<H SG1()7SG$$9),?,P0W%$1
MT%)'W:F#V/OM":+&_0F@Q@TJ&GSO2UGOW2S5!!MUJK3]; YV^WGM =MYP=M?
MVCG.S1%O;MHA\'M6[_.J"9Z5-M.(FQEV2FEI-,9W1MW!S)W]HI [;6^%N:_;
MX:M=:'7L!LNHGVX7_P!02P,$%     @ P8934'>O>R'N"@  '4L  !D   !X
M;"]W;W)K<VAE971S+W-H965T.#(N>&ULE5Q=<QNY$?PK*KWGB,$W7)*J;%_N
M;'%3Y;I4DF?:6ENJ(T6%I*W+O\\NN9*YF.E=X,6VZ 8(##$]Z-D6KYZWNS_W
M]VU[N/AKLW[<7U_>'PY/;Q:+_9?[=K/:_[)]:A^[__FZW6U6A^['W;?%_FG7
MKNZ.@S;KA5;*+S:KA\?+FZOC:Y]V-U?;[X?UPV/[:7>Q_[[9K';_>]>NM\_7
MEW3Y\L(?#]_N#_T+BYNKI]6W]I_MX5]/GW;=3XO76>X>-NWC_F'[>+%KOUY?
MOJ4W#7G7CSA"_OW0/N_/_GW1[^7S=OMG_\/'N^M+U2^I7;=?#OT<J^ZO'^W[
M=KWNI^H6\M]AULO7-^T'GO_[9?;?CKOO=O-YM6_?;]?_>;@[W%]?QLN+N_;K
MZOOZ\,?V^4,[[,A=7@S;;]H?[;J#]ROIWN/+=KT__GGQY?O^L-T,LW1+V:S^
M.OW]\'C\^WF8_V68/$ / _3K '*3 \PPP/P<8"<'V&& +1W@A@&N=( ?!OC2
M 6$8$$H'Q&% +!V0A@&I= "IET]._1SBIX>\?MA4_"XO'S?I;,CB=+".)_77
MU6%U<[7;/E_L3MGVM.J3FMYTH[K)^U>/9__XG]UIW7>O_K@)(5TM?O0S#9AW
M)XP^PQ@7QYA;CJ%7Q*);PNLZM+B.=YJ-U^-W>,\1/KHQYE>.L6/$WZ59_!CS
MFX#)WNAW#C&>QI@/TEN%,>:CA,E#.QN:Y?R"&P'BY0_(R ?%'"<PYP<E*GD&
M*\]@CS/8T5ZSDW:"N"/D\;35&*/)HO9>@ 5GE<I.@P@CG1\) 6:#\OFID&"4
M8O:I_R[ C%<^V\(' ,NV\%& ::*0;>&6PTA%;W7VKDN.2\;IF)VGAL.B53$E
M^>-V\L?MV,<=;)1G\/(,OOS(!7F&,'OD;D\0?[;7OY&S*?OTEQ+,D,O33((I
MJYV\ZBBO.O+(.2//D.094GGD^CHE%@8U'[L!,]INTC8[Q$L)%G5^B!L)YB*!
MG1,J:,2C%T$M(KD8O25=$3_ EV0*XF?*#I^($TZ?B,/'CP!1$V?J<,81XSE
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
M&@9.@FC!U$@89'0DP>DHA)(+#FUL_GN=2Q%'W*L@XIS22,4AAR49X=%)@"%
MM&!J] NR.Y+@=Q0".6^Q+L TTYALP8B!C*!9"!4GY*XD6Z-9D-V1!+\C#YXM
MT"SSF&8:DRT8,9 5- LR>1)R5Y*MT2S(Z$B"TU$(W@GDYE+82MI&2&$)-Y'"
MR&%)EO./A349>2S)UB@6Y'@DT?*8&^)$%/(:$G)&DN5T86$Y1=Y(LC7J AD?
M230ULGW76!\)>1]),#_B7\E$[D>JL3\2\C^2X&WDB3. W!3KN/F'%].8;,$H
MTP6/9"34KT,F27(U2@#9),F5* $GW-PEUI%P$NM(N G60?Y,$@R:R%].R"M)
MKD8((+<DN1(AX(1'&48QKZB,\_F7:S02CH)'OQ](R*9)@D\SPNXI<DR2KQ$%
MR#1)OD04>'Z%%P,IXH1 "KC)0"(J$NR:D1"Y(NLD^1I)@,R3Y$LDP0":I,5Y
M3#.-.2UX<?;E,YMV]^WX-4O[BR_;[X^'?K-GK[Y^E]-;W7]Y3?;Z.WKSD837
M;_OO?CI^V<W/Z4]?'/6/U>[;P^/^XO/V<-ANKOOOM?FZW1[:;NGJEV[-]^WJ
M[O6'=?OUT/^SMX7M3M_7=/KAL'VZ/GT9U>+U&[%N_@]02P,$%     @ P893
M4!0?AZGB @  SPL  !D   !X;"]W;W)K<VAE971S+W-H965T.#,N>&ULE5;O
M;YLP$/U7$-]7N"/\JI)(3:=IDS:IZK3MLYLX"2I@9CM)]]_/&,IH?$ST2[#-
M^;UG<R]WRXN0S^K(N?9>JK)6*_^H=7,;!&I[Y!53-Z+AM7FS%[)BVDSE(5"-
MY&QG-U5E@&&8!!4K:G^]M&L/<KT4)UT6-7^0GCI5%9-_-KP4EY4/_NO"8W$X
MZG8A6"\;=N#?N?[1/$@S"P:475'Q6A6B]B3?K_P[N-U@VFZP$3\+?E&CL=<>
MY4F(YW;R9;?RPU81+_E6MQ#,/,[\GI=EBV1T_.Y!_8&SW3@>OZ)_LH<WAWEB
MBM^+\E>QT\>5G_G>CN_9J=2/XO*9]P>*?:\__5=^YJ4);Y48CJTHE?WUMB>E
M1=6C&"D5>^F>16V?EQ[_=1N] ?L-.&S [BP=D57^D6FV7DIQ\61W^0UKOS'<
MHKF;;;MHK\*^,^*563VO,TB7P;D%ZF,V70R.8F"(" SZ0($4Q0:=[7$4T0 1
MJ3&R -$((,U"&F!! BPLP&)\ ,"K0W8QL8VI;<P",,D7-$],\L2.T PR&B A
M 1)'Z *B*Z%=3#(2&L5A'B4T3TKRI Y/!OD53^KPY'D$84[S9"1/YO)@>,63
M.3P?#$\43^183A+EQ,4E5T2Y0_2_+PPA[9?084JGI,*$Y6!^/@-IJ3O &1G=
M![W)%$QCG%)+FP]<]TTF-=#V ]=_;EKW0;/5T@Z$>$8B]$%OJ+($()Z@HKT*
MKEF-W D(VH:0OB,3:(>!:S$B$UR/F;H]^15IBT$^/Q&0-@^ZYG$3H0^:*19I
MCR',R(,^Z V32;B)#X"T%=&U8AI/_*<@;3%\1X%#VF(XI\0A8;$H3R>(:(/A
M.VH<TL;!.54.B3(WK96V%[IECDB"U"G\$"7752X8]5,5EP?;22IO*TZU;6-'
MJT.W>H>V'_L7WK6ZWY@\%+7RGH0V79WMO?9":&[$A#=&QM%TU\.DY'O=#E,S
MEEV+V4VT:/KV.1AZ^/5?4$L#!!0    ( ,&&4U!/A3]TS@$  *<$   9
M>&PO=V]R:W-H965T<R]S:&5E=#@T+GAM;'64[6Z;,!2&;P7Y FHP7U$$2$NG
MJ9,V*>JT];<#AX!J8VH[H;O[V88@FGI_L'UXS_.>8XR+2<A7U0'HX)VS096H
MTWK<8ZSJ#CA5#V*$P;QIA>14FZ4\8S5*H(U+X@R3,,PPI_V JL+%CK(JQ$6S
M?H"C#-2%<RK_'H")J401N@6>^W.G;0!7Q4C/\ OT[_$HS0JOE*;G,*A>#(&$
MMD1?HOTAMWHG^-/#I#;SP'9R$N+5+KXW)0IM0<"@UI9 S7"%1V#,@DP9;PL3
MK98V<3N_T;^YWDTO)ZK@4;"7OM%=B78H:*"E%Z:?Q?0$2S\I"I;F?\ 5F)';
M2HQ'+9ARSZ"^*"WX0C&E</H^C_W@QFGAW]+\"61)(&L"F7N9C5SE7ZFF52'%
M%,AY[T=J/W&T)V9O:AMT6^'>F>*5B5ZK'8D*?+6@17.8-62C2>-XU6##7TV(
MUX0X0+P!D#CW V(O(': Y$.5Y*[*69,ZS> T49*%?I?$ZY)X7/[39^H%I)_Z
MW)'$#\B\@,Q307K7IT^3^4URKTGN >1W)C[-[LX$;\Z8_85_4GGN!Q6<A#;'
MU1VJ5@@-AA<^F*WIS*VQ+ABTVDYS,Y?SOS,OM!B7:P&O=U/U#U!+ P04
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
MKNU<S5=_+HP<PZO&RU]+\Q=02P,$%     @ P8934)68(2/XK@  JJ\" !0
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
MX_^^*):/^:HA'2J]<@2O=>BS8GVH@#!'XQ%Z+PC;?U-\7>7I3;[*D2@T5NW
MNTF?VHX1?@=]?6G'> [F>QY]CZ($D@KA8_L18L] P&V+U6>:$_4KY#0P;)/W
MU2?<@SKNT7T<8\]>]PR-LF!N#G11K'$,D*F:6VN7ZAH"$ F4(CE]0VB[?6H<
M[D6I>ZI8#'V=@)[3A[,N(Z!-N^Q=E,3]?A__8R8#Z]MM@4CD_YDMWT5KU+YR
MU#H:YB@1;W5<4I_LL#QHU\"C69R,IO%\,M=?>9: EK6)8*"$DED'L 1)U"$\
MOT@W.6!-"^+N'G8KHO=\@1:!8(C$E6XB"<+IER:&H1@-+V?"W)LZ(6# KGQ2
M&*1;DM+>1;-X-IS'P_& =C&/9]-!/.Z/W4YK6XP!-ZM-1NK3JJ%P\(VH6DZ[
MH3AY5*2QVS DCFB\KV&.!Z P .+>@\P.&OF;%S-+)Y0C?#_DR.ISU.@+L<O]
MQ]$-2I^+[?]^$<4/.>.RV-UL;W= ^.399S'?X69T *M>%JM56E9[A*O&  TL
M?ND;+[D_7[NZ\.UGE];Z>/NZZEC-#W^-^H7"#RC&CU\A5^$KM_0*:9B%([)D
M5.A@7$86 LT1<*4 # -):NW$=/R>9#$2[I>LS<K@L('&D.\SH ^ I82?I"09
M;::5 !_> !-8$F4!LL(O=FA&%T[!>%:T.W1HO4^^>E[2@8& @A,(7L#L(M%[
M&J=#]BNB6^9@> )<?\ "LR^+U8[H*Z!"=GL+9(VP(E4=84%VE;V22/>>ZX*I
MD8[V"Y&HNG5A0H!FSZ$FBV;/HB8S*4+,3:MXV=C9#I1L/$: U4-:_@K,![6"
M2LV(>Z7U8I%E2UG@5[Y\S,P3B893WP(]'UE:I]&"3I7IN>>E!&<][_J;!Z [
M((7)WL L_!<A5IO*Y@YM5_&!M0'_N0.[9<ZS_\#>FZ7@+FZ*LBP>2:,GZ]G+
M9$U[AEM'1EOI9WAFV9>L7.3\(I%=0,U611C([K;,;W:,7/SNPV95/&69O+C1
M-6R B3]_"PX0M&\0MFUPZC" ,*@.]/S>1/E:#OT%NF^GDHSRTTUVEZ_78AO<
MD,_HJ][/D!QTOMG-LT)1Z81$)<.]O.#F6%C\#$OK$+.\27B/8'LA@NWQ\X(M
MZY:M%L^#C\!B&H*#DVI/GI-J6U>ILB' VAI#)QW/>='DF>=/'5:]MUAU9<S#
M[ES^XQ+$H^A#40*M6C:$1_21T!+Q+O'D<"?PNRU28[XE ;]NNRF_;90N:>FJ
M\?A7SO<UE_QO&*IK_:%,Z-YY\7-=XW9@4\.T_@PV=3U??ZZA3#XS;N/Y$X4=
MF09( 25A[C'?WI/;0L;![_B1W08%0L;;%/'U'S#D5T*WX:M_!@J-YZ]^_/3I
MZ/*7Z/Q#='7Z_=GIA]/CH[/KZ.CX^/S'L^O3L^^CB_./I\>G)U<=$A[2]PN@
MQ&C\V*,&OGR>Z/W)U?'EZ<7UZ?D9/O[=CU>G9R=75]'/F;(ZM+]E=^S2<G).
M]50!$Q"S><8452W,#/%[&(!=?2!,;8LRIH.)4OAUL2/A8$5^ZCN,HED3/^GA
MK")!T<@LD<$[-V61+IT,X5=1K(2ADS:@\\-=326$ )=AW7G;;'&_+E;%W5-T
M@/ZW0?_=Z37]D;Q[ P(,"A:;,H>)\]43R2LBG3/XZ4(N[HMB907H^D8BC(;
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
M?@%*%ITXD3721F&#+)9_1K!O?2 X>D%)PP(N_^"<YDI[<Z\ND1*9KA;B+F*
M":JUP59 3W<NA?67T5U.GD]VY?/-?+)WL!# V#5IQ !"EA:MORV]C$O A-MZ
MBP.R=(%;*)>\ 1&7$3I>LE)^N^Q%)VY$B:2 Q>_6LA,S3[5O9/C$APU'?)N7
MA"N>I1,]Q=%)Q-BP_<DP$Z6?MYG<D)L<N!>-BG):N22I@RA7(-WC#(@U3QL,
MJ%KAYH'K_Z4HQ1Q$BE+&QB.1]G% (L1%.PG/4=4&P2[]G.8K920!4BMW9S+&
M]-G-M-1K"OPCK:KTCEW8>&<!S!M!'J6DL@_'S\JE*)M"EKS!# D4K-"!I![S
MS%8H-)$%,9I(B33/(8Z8:I( M3:29KNR"7H_@#=/S2(>LFV-];*MX"G0IQBN
M*2:.\<4GOL(T \]+Y0"0@,KE(> "OB_CV)O?T]PG/-?V%_+,(Z7<6%)SS"TA
M&9-E(V29%("[V_!"F<B2G@Z$.&='GQ[ (U]Y,MVOF+'(PP2#K>)<RQ UJ+2.
MA2L2+"<)^J\[V!>R7UFQ7"_Y&FC?0[;,64GRJC^=G9M,<\[X2IKKY4Q 1R1P
M($V_ 21%$\Y#]IQ8)GJ.#O$2AFQ_4+Y,B,BDV#+9=G74WK=OT/!;4<!3"RMG
M];-U[7%T4PC!:!?\G)^JP:0MS4<6[60LQ2.+<(XIOX E@"2]_%TRYF,EN8Y$
M^PM@T?@A!S%WB^J?7#QOMA>=ITZ\?T^D#XE&NTCG)3?E!($F0D@HSJN,A9B:
MEL=HA,='VH:S1=A7Q=E0!1"GY]DY2HM>J5J-N<6'[MR.]>BOQ!A[OK/N.LEG
M@],DOPFKTQ?'5U$*Z*F6+6><<:$. >'0R]6C%YU/!&A6MJ'D8[$#P\7<W8&4
M\"4379GB+8DE.PV,MH83'L(#ARC:.'ZLV\,YJC;IF1>J:UR*OZ!]I0B%VC9#
MY 8&E#T*GF'*Y>K)3=U*!&CAZ(:G&%+R4/--< ?L93$=2&/(FHXUOH[DFG1Q
MFE558&"M;HQ67[JT0R8+0B+8E[;# W5I72<:-^G,#0&F+O0%YV!V@9:U/;]0
M20Y>5]I4>DU-<1#XE?4V?$='IYSK;?ACS5FL+IK 4>^8+R 'L&>Q@Z#'N,8E
M_%FSCUB)^$N\Q.(<MKY$;\9A,^Z>=>?VWG5C4YEN/>)[/ H(:6P#_EAT0&<P
MTU+"?:$^S\JW?"?LLFL:@%\R.]O@_5N4?]CA2 '9 %PD(=$J6]]M[V.E5WJ#
MB)(O/W.H#$(4O:H+_$@K8L[><E*/+5;@@*W=IU4 &DK&QHM(FTQ_S=!#57&<
M15/NV;+Y#.%N_*AB]M9KBW>NV&U#2T&V9ND5MM*Z+K2BW +'SV]63QP_D8I\
MYV:70VO84MPU!) 8TIRN)9.M;ME) S$9GL3U!U-)( ;;>3T6L>D3P]I2]'^V
MNS_D3MM9"<- 3%VA#4UB&,HLW;+BBU$;CBXKYW.V72^F7UU=U%2+QOD;\8PN
MQ)/AF9B%V5R;VCJ-5P79$.("T"G&5V1&VQK-)X^ 'KAS*H=XSDC:(@S4R+-&
MV[2C,PD8F&V!K'+)L P9?DT"Y?ORV&7^;$#&V]KLG="MD58MJW"!S*&RVZHM
M_ZZDMI-]Y)KE6<\X-G)<Z)1Q523@-3U.IBZ[$KX%)3[=;HMRG3U9SX*_?G@=
M/L-ZD,IHL% HRI79MLR1I"&6\2Q^5GU5CL#[B1'QZ)+:&"5=8,K+$SF4RH-X
M@KU)<:GU_;-6P^\IB&X9X7>5Q[>'G!E^V>6@U:%D9C.,@UJ .%[/:AF)[NZ*
M?WIF3NNY,.<CT@H9JS#DHU;V0=0>HOP+2<3!_0'A7^0;.!*AT.;.HC@5PLCZ
M60JTE-^GJUOO<Z=UB,F[;8F!08UX/:5,.)/%]AX.8%D0!4C%;'B?F7(@I.(U
MPX%Z$LUN("6RAT'W)U& <4W%FB15P \:UCLSO;.HN+TE*=M= XRGX=@HJ7_B
MN X >%F4'.THR!<[BPN16M*1#:!#G'3\@3")/751+A$)3%*.KHZC27]RF/0/
MQ^/#X<3%1L"G4=_9S\ME0"ZLUN\TW32ZHXH?HE><JW&>!EFK-2+$G@:9MPI>
M>I>BTX.^XZ'UK0,))1%YJ"9YO9'UN67CY/*&ORQR_P^[:)FA1(W3]Y15J3Y!
M1R4DT)>P8%#-VAG$ORQS6-^6PJ)*S+4MULO*0\#)$,$0(FA9D0+)*P"/#/XE
M%1?I<'G<>AN/$D[C!;%X8D#;:K;ML"5_DU:.5WT#2(GPPNA=5*>6.9<0J&%;
M,B/,)N/9@H/R!:\IYIQ0"K5;NFWF-K^093<9-=*=BL,)!8@!)V'[:HNBT?"C
MM.F(E&B8;;9!;# ?L\8VLA>#/"8B+$KTG8LJJ;+MX6ZCZFKM;C1$'U3UD'UU
M35+)<A<FH\[DD"(BUX&VJS+,808A%)#*%SGQ^B->&L+"9BPN?(7A!%4'"K[0
MK <: 2+6@WBZ&6EU:(%^MM@YYY5*HB1;'J)0*:?MZAIHV.%G$$V*727%,4U2
MF=VIL5VRE34-5)051M'C8!J\KR<76&\73WQB.J,)WE'BYJ-;W^$>]?):^F<"
M8%O<N-[%W;+X3MOJ"QR>__V,IGN]F2$V_-.5^?MV9?[3/H[^7$-P_KQ;WDEP
MT+F]%?7X2''MBYOI^2C)PD2KBD4^;?7_1 ?JTBU"YOC&FZ;)0=01%=0,[/N+
M;(DU"TG"[XC>:_<LMQFKB;$%P8@^'I(B29H.J.#I;7''DWHYM&F4L-*'(:M?
M$PCX;+AE& @H,7S_C.\S_.!GDE/(HKN^"YS-:'83VD70464)8RA9U]<(;!O:
M[\.G? 0MF5.S/8C)<6=DE>,H70XC\^<=2-7!><H:5#IH70N)QA3S1:&*' :%
M+TNPFU,@BAM\A2O2:/B7;EM47MJ]V;4)EP\NR:-%,)S+<S2.R!=U[W"SVE$F
MQ1V22LRN ,C^WP\)\^%@, GN^R9KHQ0=XFE:.8%EOX.EX:G>*\["0;ZW/,%J
M)K22OX,'FZ#"5Y*B%9D<[9>RK<,$ ]Y=I(1E4*2H8Z5?4A)$E,[X &]!_&,4
M,+X4U!LX?\RQWYMLD>)M?:1C<;E\9ESFF<1CG9CCY$<:(J<(:%^HS,LXCAC0
M["J<!\L3- 2$14%JE?^*UQMM-2B ,K7U 42GC&_VT7 PCUI4F*?*: ,J.C$%
M7!6/&;G1BAO:5<>Z%.!*Q/SF\XHC13$U=B6GPH<D<:1>Y'LH2K.4OR7RCS#Z
MGS+S[T]F-F%[;-4L@;9*"AL9OBTR+(N,&<@=<J.2CY%8$:%J(!GTHA\ DS]C
MV#4MLZBR.DL"?;+]7<"KO!);@$JE<C@>SU-?8<0:JCI&5*YVDZUR>-K9WA")
M,15]D=%+9(:+K2VK<6F &^=$>DBF)UQ%\PA/PX$$-^Q!I4+7"*&S D2*9!P=
M1J_>@ZY]![CJ?7GBJ7Y%J[_=E5LNK^G2X^OB$Q8& QZW<$99/EMOF5Y3#F(L
M&XCQ;KJ4(4 JMBYMGP)+JB9%<J4A.7N5,?2I!9<X)Z.'T[6DW *H&&UE8$E4
MWE_JKJ-HV#6MVB[2,I>'%"AGCM9P7\1[Z]Y@;4S2L)R:$ZAQ>+]$)S3+)2S1
M^<)("^"E).C[P8ES-C2Z/4/X5(]@'!9^2.MB$Y2/@Z$;X+FM:)E&<W/>?/%9
M!A6'2&:5(N4+$N_O,F?-?!86)IB_=@+_*5I/L3[<H%,%"9;7VRI[MY"(K?T]
M52.W;D1T(@K=5+^'$+7;'9&A(*6@J&S8$$;PJ1N_EIC30#+K1'%.5H$9\2ZK
M9@>GAAHUV11-TJ&!/Q)R^!.HPR+,V-%R$RPQPG-T?B@U"!EFKDP^+$H.HAI<
M2%1_;75LY&LN2R<I]DZ@Q'!-#*IPRK# $0!TPEGT89))F$\O4O8R7W"@"E[R
MLJ3T$Z%_FF#R'(3I2BJG)QY/])"IMW?P(_? N@-\IC&SJ%S:GH1;\WESKI:"
M0Z88J%^^VG$"#JC!%.-M3L:]R[J'*)1(=DM'2$'UVF1.23"YQYC0 T3^<T;B
M,5>*E\I_P(#*LN"LY'7V&$F)#_YE?8_P<56X@L 6U=-8O#;1PUS:;O> @OI_
M9K:J@I.JGP5].P4]8+[+!;W>O*66-]*,J:48 94BH#($IM!.0$Z(-KV.N"+W
MZV@<CP;X[S >SB>1*P=9_<9ZD%$23X:3Z& \F4=OHD'<'R; 9,BOJYCA2CLC
M>L&^,%>U1)<N_GP+KX[&\.K!($G@'\* P3N[&RFG)OO@8N/U_5Q;>'\5N%U6
M.IX[V;:=-8&E=Y'G&3+Y&B4@3^[:(")%/%J,-WZ%SE# O55 !=W=4)B7(WSW
M($H!TU9_&K!O%_(5E)I$)N+BT3*DD#3W*5E#UW(,+HRS60; "JDH3H@7JZEJ
MAWG*2#8TS/:Q*'_UC-;G,=B:.X&;PCD:X9=OBU*+?@<5PJS2W(M^])S.$7O2
MR=Q(PD@%;:@_&H?Q(0D3UH"\%!]N"?%1+=9.ZQSC3AFE\+\6;ZCU.WHQ0$R$
M)HU_L4*]F"A$P)C<$:BJ[,H^"7?5S\X(YPQ(CN0%I1CD:+RR0:596+K 1 FS
M*"F7\CDS*"<QE:2MD(&I1=( 2F5";)V<+?IN4/-$X?=&*M8$:'F0O&GS++;A
M9V"\?8$AIDL,;9I5*'Y%S3(,WCLN>E5@<;,J,F,[A:T1;19 '1T5J2\U)MH>
M8B,A*H,$D+A\('B+;RS(*^;0]*>HVF H@88MUL=\![3SS;X+^_\DX/1&N'UK
MA&1+G"7"\$:)+M<WP3>U<,/&E4M%@4WM)70Y +9# UNKL3JEG>Z.D;&==K:5
M"*Q&F'>P[N>SYNI;QU!=)'Y/&/ DE:=J,5+R*BQ_]"9(53+.)"G6XPF.B5<A
M:<I5_R-)-_5GJPLY\#K.3;9]Q*6,_R"%D?Z $7HH3:/7B(U:MU1TB-DPU@HA
M1?A)'?T!IB#.WJ/&#]B-+QR,WW"LDPJAXC_@RD)<\EE=P$(RR0>H"H1@P!WV
MBF(P>66 J-#C/6PQT-I8%_+=%,2>#Z+2?<XE]6[3ST4I1@LG\3 1?>IAPABL
MKJU\%+Y;_WX&WV_#/B18U-I-WB)HQ(WR!IU*%"#,:Q#W>F-THJXT?N'U,!GU
MYNZKL . 9PN.$[0R 6P DPQ'O7XX=-(?]0;^J^U7 2)<QZF&^.:M&J\:UP39
M6A;72VIK&_Q]EJ;(=9-1'3&58AR!,0A=ERR*LO8KWLW;'"X;"5-2;Q X0W0/
M#!MY9R #^1TZ)PU?61]2J6ZT-4==!TYO@2<'O;8AEN*@1H\::9<*U4E0M*^;
M%\A=76N5L-V6<^K<Q29%*>DW[<'?G=^\BPM+2M03H0[3SQ@&>O-DI,6G#76(
M0.4-*TW12]8*Q!;1-#)5WHAERBQR8L,^0F'>!^GU"6/E6WR"H=FLC5&SD:W:
M:V7SD8S>IEWC$7[UXE;TF["^/5^UV\4OJ3^*HV6UJH4@NC'T$9!R+5%/K*A&
MF2ODR%)];HWR98:U'=GNAQ!""'*^FE;-;'6NQK1^4U[,+YJS&P(#$:LR'2MR
M;_:BDR\IWF*?[.NWUF;:2\/D(,).&K+%5-<9W"@2$=,H8W^T=CT:V1GWV-1<
MZNIL.E'7[+L-0 6/T;5HT-0L/%=;**!A2A6?817\:"N?^M!U"L:I^$H+P7":
ML=6I!$T:M5;"A!6UN7FM3B^T+$E+NHNI35%A:9*J[(6ZR<CIE)9K8GX4*1I&
MIM M>EFEO_8B?%%G/=J&'V)"?HCZ:5!!,1-5<NZC2E[DFFB<'E"T*N-8'2)X
MWJ;5>-1D>JEYVJV/>DU5;%FZ(J/+PGPC,,7N%SNMQT3>'/85>@>^#6[52!S5
MXA<:V%O<;+7TC;\DM>I\O995<(TU()@F/%=LP[H-"5=9F_C9_5FJ-O=).IDP
MGK?06F9V+D,*JV&N78H4^KBY[BX'S+Q"+G8+K*IPX1>O7A!S#?\_<E;T%;F)
MU,1-?M3-9L4%->YV^5+CRSE5A2<S3GE/D$%1(>LT?@O;13-ZY;S^9&[0GBOB
M%6@KJUMHYU?93O1(!>8XTH5\1)J6C7EEI(+@:A7E[()-L*V)&?K1.9J_:0+O
MFS#V96E=LN;LL-Q(9Q25Y1G6/D85-WQU;+0M'2Z>%BO3&%+=@%UXR;G3=;ST
M_!BA1"'S+185IH'\?A"80<($*9_4K]CK4'4!(S7K(>>H"\Z7<:G E:O!]0 '
M6NTHPLUD>KD!]&WVA_!]HR(GDI+?FLHO:8EN/D;A(.W7R844@. ;ODJHOG5"
MN0MMX9Q77HY$D^=7-*A]7I8,$5USBVHT?1K0=$,S.VDW"*4O[3[D9)*]R0(:
M/V8!4W=D!=$$WO;1)G@Z=JX0EX0%GYG@$RD:?KR5>.I;_7D_7IU@ >^3J^O3
M3T?7)U<B8'(L6Z!%M9;PQM.A](_M4Z T2)E%S*?">^BQ"W,'-UMO0?UQG;N6
M+;Z2^?='1[XHHPCVE83,D(//1#X@.E75[F%CJI::  "N0I/Y8&6\NZT-KMBY
ME5>+5:%V-]?+<=OY#L^R%,]&)UGV-9J:R_$)@+:L@I$#6BKIV%KG5(T;Y*6_
M2!@/(5\WA!2!6Q M=J1;I^;X"5Z^4W:<H4D0I", MSF:Q&QV/M\>KV+],T&9
M5KEDH/WNRK5JPE3?^AV[E8->G.^8ASJ;NLG0"81J<V??M7J!0].\&^9S)D1)
MF\$*SK0/@O?J!5W>:.?=?4G?!2"NGFE;]\YY.R3=)C!Q&=/!.W'TAJ>W*<C*
MP,T"%F+^E- $[#&'AT96]@5#0@K7U[(#PM)8HAD_TRN VQ#H00-CDDH*&LM'
M(HX-@3$1:Q>7YQ<GE]>_4"EYK")_\>GD[#J.SDZN(VT/')NB(*0.NU(M)I#?
MV.Q2EW F47N."Z2V+J5V4EL_A<T)'E %5L) H7@Z(1<6%DY;[VM!+*J4H&1?
M465O9T,*\F^+$@QE;750J*! 9?%](3E"1A]&T'Z%FI4/5MIWC2\ FRKH2^S[
M%,"!XWY,PT(Q;K!?E"X$<(Y5QEU>EG;+$AY,3A-$:#D &&.5/F+UDY.KDZ/+
M8^XE\/[DIY./YX0"T?'YU?65 3A"N +)9W$OZ.\[Y>F1H.ESEO2&SM"I#5_C
MZ/5DV/A^)C;/UZ-IXS=L<7!Z=GS^Z22Z/OI?P'E/36MBR0(/'$RN:!V=1L")
MGEPE+R?VZ# 8EZ@Z!%(YNB1D?G,U,=3+T'+U+#\G'@!0]5_%XF@'R OCAK>
M5:%Q2B<"6O#*!E@1CL H$G7J$A-;WS0C+\W&A#AJ%5[C,&%>2!3'%HHE?QJ^
M")=WMW !\AQE%,982<HCISZWS6VH[_X%^&)^R\;LM]1NB.0]HHR!XZD>TBJW
MPAW*&S8#MD"D*9Z4+BY>+S\0%#8*(T'=J049KXJW:-4LQ^AVYN-RCK:.XVJ^
M*[8%]:1OL=P@$/!6+O2HM="!P@ ?RJM[#;D#N+5O.+\5G8G"MS4F_1[.G@R3
M'.G;?#'"9NZ1Q)^_XJ!56->KZ'SM'12# ;<@XQ#8:WCW>"<P_G-Q4R$7B@[P
M)T$3?.*(2YR3X(H.(H4VZ;D 9#XZ>1(H=8;IZCC&*::](C]1&]1QL<S,YNFX
MG#Q'N1Y/P)&YTU8LN"PRK**9&F-4C>>?M2&-5N[PG_U&<7$\L=8O*O&X0<C]
ML7?5BVZS)>ERNBCU93ZD7_*''='_X?@/;/2X!<X3#9(_\(-$1# E1.S]\N)C
M4:Z6CV@5QB&Y01._CA4;<PR@D.GX-_2%(#E$F\QTU%?:>9U^T5V8_K0V@BR
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
MEEO!&8LW>^=JH4@. <6-I3Y4\3[#3#9V>NZ H)J<%DG#8A=507W)T+0E*06
M;(1#UF&4+JB6/T['670NR9I$,B2T3*0IC&Q9&X;O5;I<8O(QG:S09K6A.@!\
M4V&T6$$,'=>W<#%=&@? ;P;%\P.#:^,ZH7KDDL0X7\% /[<-4!2'^2C)3RJJ
M&'Q4S<8$W_D2PI@/XZL=.J,K.7,0#)K9U@(#>F-%F1\W%)9WZN*\'FT<H"EY
MXOH\9YA-O<8S@)L1)$R)5A%LR-BS6A,NZ_E!\9Y+')+^N"%3JA0IBLU*8NF"
MB+'0)$ZD?9DQ; G@YDAKA&K<F];(E&?7NW4*\IQ4LN DW##LTQ,17T73N^B<
M2\0[ZBCT!P%N[JE!H?MTR<4?2E;=_IRN20B6G..XJP2B4Y/\R5IQ- BM#,@N
M/09#9FA"L 6,?3D/'_:&%.<QPV*NGT >NV\K1'3@0/;&U"2ZU%!QE$GZ\UD\
M&$SX[_Z<2O:<95N-%TM&DWC0[]._\_DL^BZM0'QUEV*321@ EBWJ36?TSVP0
MO<]7A)L=#T[&_,]$2Z/*:=KCHF:NOD"B2V_UYV.<&+5J_*YII%QV10<?+^T(
M=OOD;EKBOJ4$8PAE9?=(Y[@11Y^@)Y:L!=[<AOA$1-P>K4.PPC2XDP(8'/#&
MZ:ZDKW5/RE4BGL((Q%!W2[I4-V,?094>T'D!"OS'8U3*GN@CJV224%.+-O+E
M392;19R.M9;2$0_"@I[1EU\/S=T7I61?K88VH=RS8P*(N=9P=60ODLC(E4!_
M\P0T_O$/UYIJ]92Y,AE9HX>$I>=>MPG*ZUJA0B10,1;5]0LQZS="0^KY_(VD
MT#T$FX[/V 2(GR!]=*OE9T@YXJ2?ZR#8PB E8A1!,+BJG$1K2P-LNP; 'TZ0
M#++KY,J7S^'D5VY)PI9$#;(R<_4\@2/)P".!32FC/IC?5!VWB9 T:]A>)L-:
M,0V.Z-MRHDB++@[$M0_4LQ$39L]41:4F"C*0T1CJ@IP]$L/LB'X6R+$)T]1R
MJJ*=2X54+-DMQ>GKD(^[G/6"X$I3:V*,:T%"+2):- \C35,XEC,(I,O/>564
M3S'&0V(>H8T)QX[S2UC!'==6LP8!58*TF*I+V 9Z@Q)8^11)QU>\B[C]*F0;
M6I:95OR8V<0WC<0G1=!B[-<F(;HZ(VUYAV+*:FMPAJ)Y*.AUDB=7'H\.^#E[
MA4B6M="SH"Q^7@94*$Q*X]*G]I:%00W/1'QX?E.:$GN&NG" PT>*R3H]/8U!
MVO.U] $^F]W6\'OIN<S.")ABN\JXJ823O;F=T)/<4GW-)- (0#IW@#47K>GH
MJ+T:#;ZA$<ONEAG?0]BJ4JQFI$>X6@?UG$X.XS2T$VY@8']3[%2S#=G9*HS,
M(+?OH#_H ^T@6<^&HD]5;-UCTF>:@>;23'IUJ5<-]G*U ,Q_7RS8@-LM$3P4
M #;LY5:B'$N6>2J@8P(NJ*1E^JBEHMFF*CEV7V=7GQA[II,:C"<C:=NU,5BC
MIW#[Y.1NNF[7:+?XE%9;++;MC=6TK9,G4K3#K8O=N%(WA'"L;:'Y2<[PF]YF
M6RI.(RA,P,BY:OQGJ;]#Q5'@YY)[^H(2"IK:'36RXNYTE92;U.+BE+6- W\=
MZ,9A/I$#W='N#O065UNI$W1&9H1Y5D6ZO+@\!\FQ%UWLP0YUY-QFE!8JKALJ
MY\FZ3LW4KL'ZURTQMK? 8LTFZOX3W@U%2XI#JWLS#<?%5;' $'!!@(-7\GF?
M*(RZ.E+,E 4P^.,PK0[30]?>PTG(7AND%MP214VOFEYFP/CR:N>BCV(37N3=
MBA3RY0:FP.RM9DD@4UB9,LJU._9BIT-B1',I6I:,IKU)JR?A:Z#>=ONNT*3W
M'D%QE8%PD6-J)6HC!/<GN-.5?.U.@5R$7&6D@O$(,7S]83PBN6U(X*C*!JH
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
MK*7&51]:07?,%8SSI41Y.FKCCD3:7ZJWM[$7"RHRHP-KYL:3-M/+G_MKK,\
MNLIERU$4-ZB"\]S9%PD7Y3Q=HO,WJ_Q.(A</F )7]V^:9X6<$+CX1&[]-1X(
M8N=[:9-)WI:W34W<>S)X/CI)K0TW:CZO;3?9"#SJ]=%(W'UC*(O8581L(L5S
M-.P7.59<8#"^1+1)\0'0WT%$H-H#$Q(NJ/3 $!3$/E<>&%!N"J4N@PX(8HZI
M.P!B]"A$6U?>>C".AZ"2?@2=\JUW7!T,R$A%62+45,/W<JW=O5;\;X?63 IR
MB^2.= OK<BM]>GC()>*R?DLL(V/_^W6Q ?$):Z%(]FZVI/+R!9E7]==!_'>
M/M5/PDRP$1_%&+3D"1\$0'\J!X&906,^B"1.)J,0^LE0H4_:]7 (%X6)PZE)
MG]S>YR4S\)R,PU'QV*@K1T+7=W"#BC*./J0K*M5&UZ!6M^U=]'%W<U-()R!4
M/(L8[LR7M'H779?%4XQ%M^[AXJW?-0K5O>.&' 46S\WBZ/P^+WI>+JLV*;>'
MJ@*QQJ^0O(2PE4,I0\ )OJZA"Z<G/>IP6NU#C[9!6EPJJ7%:WVH/EH65#Q])
M=40YC.<4RE-UEWK%3$[0 A;.E.)T1\Y?X&BE6G -!SG2=[LJ+$ROS0MJ@J3L
MQ&5L;!\QG)C0B4L- N[$#IYLP"!G:5,X)$6; .?%1!-:1.?D>AYC<#_FSIC(
M1RQMHK>*]+A,(IS.I/F=%8GQSLB,L+LLT"G<0I:Z]4OE=S64#O% *_DF;;+D
MOHJ0K<6EPCGSD-']T%T@I_A-=L=>]"&D7;;&JUV(BR&P\1*&B@4%9GXK2T!]
M+&%*!'].!TJ)L""H4"+VI: 'AW1S0Y1FXZDC2=-X!FSU)>GW-FK7A,M[,+@>
M(@[IR<?,K[L^/ ^8K[-L&ED^77P\_^7D)/KNY.SDP^EU=/'QJ-E)^:+ BO-H
M8".$_DZ32O986UK'I4A]+F "5V()@ZS9LL!V-[(!4HB7R%^4LV"B/US$"PA3
M&6U>L4)#D&Q5CUYT F(.96_Z%S%HL6'H&_:-H4\[>=8M?2X K:4NA\_Q]MER
M'"70F"MUW3%@QB'-BU$/LD!7"*1K=AKT 4LL6;!5P0(I/9?:A+>U@,/BZ?5[
M391@WDB)<)1@VJ95UL_\^/S3I]-KK"]\115#C\_/KD_/OC\Y.VZIK71LA ]J
MW1,D"+VH<,+>^42JIQ 6R>3!OB@B]B+1H)ZAOB6:YHZK.5227EP.#O7DX?K>
MV5),3$PO8  I2IU)%Q)J#U+Z'[@DOW:Z1&Z<ASVFFE'W)]_CQFA?ER<?CZY/
MWD>G9Q_.+S^U!]]+,>I+UP!A3[C]_J'M'?6MQ0.5RO:B<'T6R)^C+0;T @?=
MG6/U0=X6BQV9L.O=&/C*Z.P(+N]$D@[HP32DC;L2L*;! 3>0PGAI5Q) _!A\
M(&X%V\#Y)A430"PG+\'DG8G%M3W2PXX'>.>XXT&9W6&A0:0#^(-U=S6;PKU[
M9A*J[$]5FA;84QY;HKY@(BDK0Y"!_SY+K2.T#E3AP76OA^>C]]$&FXNW+NS8
MLF\ U_$#/:@@PE6ML^SK(-Z&8BPCZ^MI4/J7LL6;??>D;H^DYS<PA>O.+! X
MODH.!C@/9OW#!#2=YKT2?>H?AQ:$J/]=<$(6\QL10MZ6>,\NC)"GN%;@5Z($
M!VNA,,"R)0@+2*TY6UC"<O0\4NXIA+HURZHH?7/'&/:Y\UG'K86FO0=1_8>L
M7 &CT48 KC);0/1<"P1&KOWT#$M5R5[R,*BBUMHC!6%#?ED#.V*"*^7_#A$*
M%-4H:\;FM(>LU,KBH]O=6G([I8?RVU:$XS KQ>JX!0_B$ E>BH_/XF+<@C%?
M@R&U/AS-.N%ZH$?_DCYLWET[KW#C-(.#<GVL*(J3#X'ULI <H7I656KJH[KX
M$FQ8D23O:9)WHK30*73. <@7E-UE>6N#<2H1I+@H3HKBOAL7+QQ5E+BWS+;O
MGRK"(-_:1%,SI;&'A IPWW6_(9A2J/^BH(YICACR><"4[]1]BBYU;M[$+59T
MH2Z(]YTT)O8UGS ;'L:MWKDNJD\>/=_)+;_)M_**:OWPWB9]RDKG0Y+S:<TD
MSGC^,*W&*9<5UD7 3D4IY5S&WGBPE9)V&*]I[A(;?5'[=&BJ*.9%<U5UR9"
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
M[H I;0L*3F&U5F:'$VLI35!?PK__>'1Y?7+Y\9?HP^D9 .CTZ&.0*W"P6Z?
M^^$TWC1>=95H?)D FV/]HA2/KYB_M8X64DY.1\Q64K?(+<;&I9 :Z,:J89:)
M_;(U=JA.D8:?$$UX&\FFU1EB>_DM>MCB#[L>PQ_]Z,^[-?:SC3ZE)?WP[ .7
M7I8=S&;Q;(BB]6 Z)@6#_TI(.QF,T.L^H;^2>$Y^D0&H>US;CO_B1I[HS\2J
M@]B#"Q@KTOMD-  =8@SZ"'IAI\!&,5.M'R4)O#::P;_H<TC@WR2>8  "2.=8
ML KD]7C6'^]S7<"RIB#<@Z0]'@]0_QR1+2GN@Y) M5RF5( &!B7W81]+NHQ@
MEZ;XS6BB0PSA'T!;K!@XX")=\(G&G<5S; 2/AK($1T)W4% 51JO.<*&9UQ'5
MK<1_"([]WHS_F<SIGRG_,Y_P/U/^9ZSU)+6(,,>T(N+M*6H#ZT;W&_PSF-'V
M4/V ?["'*GZ:)P2=P8P>X5W,A@VWSLOCW*(#_:MQ/2^X!_B*XYV.'5V%V]!X
M]/(4;M[%1TRJ^H!95E?G'T_?\P6\KF=T^OME+I$KO(()4*G+KJ.&$6B7RK]L
MD64A><J7>5KF65!$_/$>KO738?&X1KX',GJM]911#(5K5>JH\^30<\8,<_36
M$IMF5D\1P,<M; 39F"8K2F:R[\"5<1L?E*M,_U&OKVF]?A6N.$G7K"PV9E$A
MY>27RLO%[@%SJ!=JI423$P*A%%M@I7&X+-&C&2LL\F**S1U@R[LW-EZQ;:/\
ME"U]P[U-49!][BUK[V))\!D1R@E0S4Q"#8"D/TY<B>RJ\>#1U0^<^X=_8'.D
MGXX^$JND-[GZ!1X(V0B!'ZZI9@'%:!=ED!SI\T99:I':>"BUN'HE,35@7V&6
M)SR^5 ?W(>>-L7?:16QB<I'[P%)84>:@]5**A:U@P6*TR)U4I*-B47\AQ708
M[UQ8*/WA"X=7WH!<BT=VP:0%=K"C;GF2AB)A[#?I^E?&(I@]>](>'=0QJQ<=
M=TW(J8O<_R;EV%%W7[V*5NEP%'O=..06%VOC$9'2+D^.S[\_.R6*<T9N7MQ9
MX&JY4A<$AO #Z76J#=V<JNY9B;U;)0[,U!)/[6M6MI2Q!$!N#YTRYV(#U+RN
MJ247QYHLA(<J7QJ;O.:< %:)@R3NR&CL.6=''EB8J:"\^I:TQTE9D.$$CN$A
MY\8# B8TR)M,(UTW2=KI6DT7UN=>N8Q]5'E95*JKYAD3@K#,# =KM\U<JY;0
MYDG7],TP-Q-NX\8D9IY2YHFK,Z5%$^50R'/AU.:XKG _,TJ7-28/TP;<*-I+
M)!BD:?_1Q\7(M/=93>?^RI74K&,*W4<@V 22E%N 8)Y =?O$3*EE@J!8F[L
M@0.'(.I12 1MWVRQ:^6,7M[[TW(S05X']7<E.6?8@F3M CD0%W$*3KMV+S\4
M2W^*]!RM3-55S:MS%4P<(G#VW(%B)][%@J*Q>3JXPBX8N\H"C K[ZZ"6_SE?
M[FI->^S.*\YE0LL5G@?7LB.##L5_+[9A^A$\0QQ77^L<%RL:W/A1Z++=NW:O
MO$:Q)*!Y9=TU4L^V:Y.#4L&MA0A*XJ ['_85VI.C+@>R'3$1Z+77S3&=\/G<
M9:8<EJ0ZX%DH0ZRW//@6#0PK:T$5"N.J)FA>8\J]3*Y;[U9>-4VQ#GI=4*9^
M.&ROX22<]3)=4:\GMFG(V$K[KZY\H5GJFU.C>S@G/!/V@R+KX6I%0Q%$J38
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
MS?<PY800D>M VU79[6X%BOTM()5/]O/ZXP=)[6XI)@Q?83A!U8&"+S3K@4:
MB/4@GFY&6AU:H(]%3E6_4TF49$O.&]=<%HWGD4#%SR":%#LJ:/O77:8=P\D=
MWU)I0*VL88[\"BM::@79N]*?7&"]73SQB>F,)GA'B9N/HZ7ZY7IY+?TSH;8M
M;ESOXFY9?*=M]04.S_]^1M.]WLP0&_[IROQ]NS+_:1]'?ZXA.'_>+>\D..C<
MWHIZ?*2X]L7-]'R49!&DAY)%/FWU_T0'ZM*MU=MXXTW3Y"#JB IJ!O;]1;;$
MFH743>N(WFOW++<9JXFQ!<&(/AZ2(DF:#JC@Z6UQQY-Z.;1IE CSDQU9_9I
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
M\%IZ:SXGZ.\'9XFIU(&2K9'A B$YK/X'XQQ1V3F.14Q8&GY0?F%W]QY79)3
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
MDR>G(/">Q!7<>QR!JUU/:2HW!Q8)P^ HP,!8VP0 B3FPV@[BIK.P-*K=;$S
MB#NPCN[K6H[LGF7Y#0^' $((H%1%76CL:4JC(W2!V5;C2K1=_F921"ETZ)P*
MLQQ!KLJNV6G;N8H%T%YU07\A<_MF<6,N$6^9@AS4J>WL<E/_,'=Q4Z]@L Y$
M,HCQNGR(]R1Y3*C@]=N+=]>@JUZ=O[E^/[T\IJ)E!K//AHU))PKOG0DO-F9:
MD_:@%2RZVADTFQ>, R=5@A:M,"<;&!Y"$U5(,;A7.@0"E#CRS+D)V5?QT07+
M!<,2;E#5-0"%1,C*?F&JG-S>$C@-FN,&[G+,905@:/I%,:B--VAUV[9:VK\D
ME!TT;*IH+J</?H$+'9G%0$W5)&9TKTPP#L752%:B^<,/3X>Z)P5JMF74>I5R
M:W2E]K((C8J5-@#2LD>#/Z#<PJDUM*7"G-:80OOBHHF]L3/YI$J'PZ'PZZD@
M'QEIHQ%A/9PO$_JQ7W1-&,=7FVLI1LF!PU3U=5"JV6U:#]O^K,#$55QH(]*1
M=/G['.'L^N3L)Q1Y+MY='OT\O3H&YG!V=?+Z^)*MSJ))><6)(%83Y23L0YYE
M?;:5=\',\$[Q#MM*59B0V2PRHH:*$7MONF8S+DJA@!,:J='^?7G3,4O?3X Q
MI)24V01JT:(=5X[FO#IOH][@"'[1(WAC+$$G#XBE0GUZKX!LFOPR/7U'@45O
M3LZF9T<GT]/DY.SJ^O+=6ULAWL!R..74 TD*\J\J>P1#ADUI>"<H1&;GJDQ
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
MY)MPX23:D#KZG,L@. <%'6P]^%8/?X"!\'0"F1=4$-XDK)D9A05Y9L^IQMH
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
M7KW;O(SWT/E:N+=W#TA!5B'R5LE[@$Z>)K8XJO/5;';EE$^R%I[X*K6^$YY
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
MN>7S6VC7-FM:/7G@-L]O8RU>XOX^R,"NO[^EDF&";O^ZV6S_X_\#4$L#!!0
M   ( ,&&4U!?*% ,2 (  %H+   -    >&PO<W1Y;&5S+GAM;-56VVK;0!#]
ME6532@(EDNS$(8UD: .!0EL"\4/?PEH:20M[45<K5\[7=R^ZV"[NQ4U+_.*=
M.;-SYNQ%GHUKO6;P4 )HU'(FZ@276E=O@Z!.2^"D/I<5"!/)I>)$&U<505TI
M(%EMDS@+)F$X"SBA L]CT? [KFN4RD;H!%\,$/+YMS*#!#^>OO[:2'WS"OGQ
MY,W)2?AX=K.+G[K &4:>XT.6X&AV@8/?)ST/]_.:V [UY9]1_X1YAWBVAW@D
MVI-X91.#;E?G<2[%N+E3[ '#3#B@%6$)OB6,+A6U63GAE*T]/+% *IE42)M3
M-94CB]1//AQYSQYXQ\.ID,K5]A7\[[*;OA/H/2N0,C8(G& /S..*: U*W!G'
M37;@#R'4V8MU9106BJRCR24>$]Q@BBRERD -92+<0_.806[E*%J4=M2R"FQ0
M:\F-D5%22$&<ACZC,PQM"HP]V*_A2[[%W>;(S[%'$F)D5?2F675GCJ<6.LF;
M;)Y[D_8P7E31E=3O&[,<X7Q[Y^!>04Y;Y[?Y(,"PDZIBZW>,%H*#7\PO"T8'
M%IS'I*^#2JGHD^&S5R4U "B,5J T33>1;XI4"VAU?YW:_%#-DR/4_-S[7(
M1=BF:'/W7_(N_V?%MF_\M6;WM[*K^!E%3J]>OD;;)8] Y.P81![!<4^O_['&
MH&N-&_UWJ_L.*%HVE&DJ.K4ES3+P>NSS)\&?[;N*;?7 L0D;>DV6YJ&[Q6]R
M,\A)P_2]7:(+)GBT/UKAT6R8M1@H$CS:GR"C#;]V!<?7]/P[4$L#!!0    (
M ,&&4U -GT!:5 <  %<Y   /    >&PO=V]R:V)O;VLN>&ULQ9M;<]HX%(#_
MBH:7[<YL-L'8F'::SA@PU#-@J&VZFZ>.8@1HUMA9V21-?_U*2D*.4W)F7T[S
ME-CX\J'+^70D\?&N4O]<5]4_[/N^*.O+SJYI;CZ<G]?Y3NQY_6=U(TK]R:92
M>][H0[4]KV^4X.MZ)T2S+\Z=BXO^^9[+LO/IX].SENH<'E2-R!M9E?JD.?%5
MBKOZ^7-SR+B^X%9D_/JR<]%A_-!4$UDT0HUY(Z:J.MS(<GO9Z7;81JJZ2<V[
M[95[6<J]_"'6]JC>57>?*R5_5&7#BS1755'8N\P']B;]AOIXYJM0C<Q;%S;\
M.N&:];+3O] /O)6UO):%;.XO._;_0G3TMS@'7\.6P]/?AT+\H/Y/,5:;C<S%
MN,H/>U$V#^6H1&'>7M8[>5-W6,GWXK(SJFZ%,L3Z!='Z@;[1Y?*,Q-0'J3]0
MT;IK\"A1RKHJY%J_?<U2 V%NJ%FU8:-J?P,@'032^8600U[P,A?,UGX- 'L(
M8._- -F[)0>0+@+IOEU5\WH'(#T$TGLSR'3'8:?I(Y!]6LAT-9\'R15;3%@:
M3>-H$HV".&/!:+18Q5D$('T$TJ>%#$9?5E$:9=$B3@'1 "$:T!(MD\4R3+(K
M%L1C%FJZY3R,LS]8'&8 \#T"^)X6<+I8C/^*9C,+N,@^APF+XBR(I]%P%K(
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
M_FG-#.XROE_R_3-NJWXZ:#Y3>IQVR>9VO3N$MU7_1)AY17G^#5!+ P04
M" #!AE-0AO0+<CD"  !5,@  $P   %M#;VYT96YT7U1Y<&5S72YX;6S-V]]N
MFS 4Q_%7B;B=@H,-ADU-;]K=;I6V%_# 25#X)]OMTK>?0]M)JS*I51/I>Q,"
MQYSS@UB?NUS]?)RL7QSZ;O#K9!?"]$4(7^]L;WPZ3G:(E<WH>A/BJ=N*R=1[
ML[5"KE9:U.,0[!"6X=@CN;ZZM1MSWX7%S=/U8^MU8J:I:VL3VG$0#T/SJNGR
MN6'J;#>O\;MV\I_B@F3Q]1"[^'AMG<2J3\0;)KR^\7@>[_O^8)UK&_NN:.-F
MT]:V&>O[/MZ2^LE9T_B=M:'O4K\SSC8_@FN'[7/>.^/"-]/'QN+0B7\6I)?+
M$1X[>SK 7#GGY!"WA3TU:BX\?68?&OBR&^K1V>7D8M6%]L3CQ4AWL>K%<>$Y
M']$>MTYCFS<-CZTO]\/^'MU^_G[JA?\M>C$?/O;6SY=#0G(H2(X<DJ. Y-"0
M'"4D1P7)\1F2(UM1@E!$S2BD9A13,PJJ&475C,)J1G$UH\":4625%%DE159)
MD5529)44625%5DF155)DE119)45619%54615%%D5159%D5519%44615%5D61
M55%DS2FRYA19<XJL.476G")K3I$UI\B:4V3-*;+F%%D+BJP%1=:"(FM!D;6@
MR%I09"THLA8460N*K 5%5DV155-DU119-45639%54V35%%DU159-D5539"TI
MLI8464N*K"5%UI(B:TF1M:3(6E)D+2FREA19*XJL%476BB)K19&UHLA:462M
M*+)6%Y1U/J:]:8?_)?DUCON7^6+^-\GU'U!+ 0(4 Q0    ( ,&&4U ?(\\#
MP    !,"   +              "  0    !?<F5L<R\N<F5L<U!+ 0(4 Q0
M   ( ,&&4U GZ(<.@@   +$    0              "  >D   !D;V-0<F]P
M<R]A<' N>&UL4$L! A0#%     @ P8934*6P/[?O    *P(  !$
M     ( !F0$  &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ P8934)E<
MG",0!@  G"<  !,              ( !MP(  'AL+W1H96UE+W1H96UE,2YX
M;6Q02P$"% ,4    " #!AE-0T=U&Q'T#   K$0  &               @ 'X
M"   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ P8934*1I
MLC%#!0  N!H  !@              ( !JPP  'AL+W=O<FMS:&5E=',O<VAE
M970R+GAM;%!+ 0(4 Q0    ( ,&&4U E,5"]=@0  )05   8
M  "  202  !X;"]W;W)K<VAE971S+W-H965T,RYX;6Q02P$"% ,4    " #!
MAE-0>(?^?E$"  "X!P  &               @ '0%@  >&PO=V]R:W-H965T
M<R]S:&5E=#0N>&UL4$L! A0#%     @ P8934)*V9]@X!0  7AD  !@
M         ( !5QD  'AL+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0
M   ( ,&&4U#J[C. 3 4  %4;   8              "  <4>  !X;"]W;W)K
M<VAE971S+W-H965T-BYX;6Q02P$"% ,4    " #!AE-0L7:')+0!  #2 P
M&               @ %')   >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L!
M A0#%     @ P8934!1SU$ZU 0  T@,  !@              ( !,28  'AL
M+W=O<FMS:&5E=',O<VAE970X+GAM;%!+ 0(4 Q0    ( ,&&4U ;= QNM $
M -(#   8              "  1PH  !X;"]W;W)K<VAE971S+W-H965T.2YX
M;6Q02P$"% ,4    " #!AE-0__^P0[0!  #2 P  &0              @ $&
M*@  >&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( ,&&4U!-
MOWQIM $  -(#   9              "  ?$K  !X;"]W;W)K<VAE971S+W-H
M965T,3$N>&UL4$L! A0#%     @ P8934$@?F@RV 0  T@,  !D
M     ( !W"T  'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4
M" #!AE-0;ZE= ;0!  #2 P  &0              @ ')+P  >&PO=V]R:W-H
M965T<R]S:&5E=#$S+GAM;%!+ 0(4 Q0    ( ,&&4U!/M?#UM0$  -(#   9
M              "  ;0Q  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L!
M A0#%     @ P8934!:0(TBT 0  T@,  !D              ( !H#,  'AL
M+W=O<FMS:&5E=',O<VAE970Q-2YX;6Q02P$"% ,4    " #!AE-0"\2P4[,!
M  #2 P  &0              @ &+-0  >&PO=V]R:W-H965T<R]S:&5E=#$V
M+GAM;%!+ 0(4 Q0    ( ,&&4U"9AG!;OP$  #<$   9              "
M 74W  !X;"]W;W)K<VAE971S+W-H965T,3<N>&UL4$L! A0#%     @ P893
M4,=A@K:V 0  T@,  !D              ( !:SD  'AL+W=O<FMS:&5E=',O
M<VAE970Q."YX;6Q02P$"% ,4    " #!AE-0#3\ 9+,!  #2 P  &0
M        @ %8.P  >&PO=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0
M   ( ,&&4U#UQQ/5M $  -(#   9              "  4(]  !X;"]W;W)K
M<VAE971S+W-H965T,C N>&UL4$L! A0#%     @ P8934 C@1JZU 0  T@,
M !D              ( !+3\  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q0
M2P$"% ,4    " #!AE-0CJWGR;4!  #2 P  &0              @ $900
M>&PO=V]R:W-H965T<R]S:&5E=#(R+GAM;%!+ 0(4 Q0    ( ,&&4U *3[K9
MM0$  -(#   9              "  05#  !X;"]W;W)K<VAE971S+W-H965T
M,C,N>&UL4$L! A0#%     @ P8934(AX6<ZS 0  T@,  !D
M ( !\40  'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q02P$"% ,4    " #!
MAE-0X+":NK4!  #2 P  &0              @ ';1@  >&PO=V]R:W-H965T
M<R]S:&5E=#(U+GAM;%!+ 0(4 Q0    ( ,&&4U#$@0<$G0(  *P*   9
M          "  <=(  !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L! A0#
M%     @ P8934$9A G;& 0  -P0  !D              ( !FTL  'AL+W=O
M<FMS:&5E=',O<VAE970R-RYX;6Q02P$"% ,4    " #!AE-0R",@V<8!   W
M!   &0              @ &830  >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM
M;%!+ 0(4 Q0    ( ,&&4U!.?L;(MP$  -(#   9              "  95/
M  !X;"]W;W)K<VAE971S+W-H965T,CDN>&UL4$L! A0#%     @ P8934($C
M#;OC 0   04  !D              ( !@U$  'AL+W=O<FMS:&5E=',O<VAE
M970S,"YX;6Q02P$"% ,4    " #!AE-0!ARU0+8!  #2 P  &0
M    @ &=4P  >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    (
M ,&&4U!9= RISP$  )P$   9              "  8I5  !X;"]W;W)K<VAE
M971S+W-H965T,S(N>&UL4$L! A0#%     @ P8934'<B.%FW 0  T@,  !D
M             ( !D%<  'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q02P$"
M% ,4    " #!AE-0@*Q"J>(!   !!0  &0              @ %^60  >&PO
M=V]R:W-H965T<R]S:&5E=#,T+GAM;%!+ 0(4 Q0    ( ,&&4U#U4EW>MP$
M -(#   9              "  9=;  !X;"]W;W)K<VAE971S+W-H965T,S4N
M>&UL4$L! A0#%     @ P8934"OMK]SU 0  RP4  !D              ( !
MA5T  'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6Q02P$"% ,4    " #!AE-0
MONAJ]\0!   W!   &0              @ &Q7P  >&PO=V]R:W-H965T<R]S
M:&5E=#,W+GAM;%!+ 0(4 Q0    ( ,&&4U#11'WDN $  -(#   9
M      "  :QA  !X;"]W;W)K<VAE971S+W-H965T,S@N>&UL4$L! A0#%
M  @ P8934'^97@&V 0  T@,  !D              ( !FV,  'AL+W=O<FMS
M:&5E=',O<VAE970S.2YX;6Q02P$"% ,4    " #!AE-0CAPR<;<!  #2 P
M&0              @ &(90  >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;%!+
M 0(4 Q0    ( ,&&4U"M\K,44@4  #X?   9              "  79G  !X
M;"]W;W)K<VAE971S+W-H965T-#$N>&UL4$L! A0#%     @ P8934!\<CIA4
M @  4 <  !D              ( !_VP  'AL+W=O<FMS:&5E=',O<VAE970T
M,BYX;6Q02P$"% ,4    " #!AE-0YV>%TU "  ",!P  &0
M@ &*;P  >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;%!+ 0(4 Q0    ( ,&&
M4U 9EG>*H@0  *@9   9              "  1%R  !X;"]W;W)K<VAE971S
M+W-H965T-#0N>&UL4$L! A0#%     @ P8934%U2UM&[ @  %0H  !D
M         ( !ZG8  'AL+W=O<FMS:&5E=',O<VAE970T-2YX;6Q02P$"% ,4
M    " #!AE-0TA%\"2D"   .!@  &0              @ '<>0  >&PO=V]R
M:W-H965T<R]S:&5E=#0V+GAM;%!+ 0(4 Q0    ( ,&&4U",V&CJA0,  &P0
M   9              "  3Q\  !X;"]W;W)K<VAE971S+W-H965T-#<N>&UL
M4$L! A0#%     @ P8934%E(28)9 @  HP<  !D              ( !^'\
M 'AL+W=O<FMS:&5E=',O<VAE970T."YX;6Q02P$"% ,4    " #!AE-0#AND
M>H(#   4$0  &0              @ &(@@  >&PO=V]R:W-H965T<R]S:&5E
M=#0Y+GAM;%!+ 0(4 Q0    ( ,&&4U#O=,@9( ,  "\-   9
M  "  4&&  !X;"]W;W)K<VAE971S+W-H965T-3 N>&UL4$L! A0#%     @
MP8934!C2&9._ @  10H  !D              ( !F(D  'AL+W=O<FMS:&5E
M=',O<VAE970U,2YX;6Q02P$"% ,4    " #!AE-0H;^_2J$#  #1$   &0
M            @ &.C   >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;%!+ 0(4
M Q0    ( ,&&4U!F?A85] $  & %   9              "  6:0  !X;"]W
M;W)K<VAE971S+W-H965T-3,N>&UL4$L! A0#%     @ P8934$IB<I'G 0
M[@0  !D              ( !D9(  'AL+W=O<FMS:&5E=',O<VAE970U-"YX
M;6Q02P$"% ,4    " #!AE-0B!G6M#$#  "3#@  &0              @ &O
ME   >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;%!+ 0(4 Q0    ( ,&&4U#_
MMA,1<P(  *@'   9              "  1>8  !X;"]W;W)K<VAE971S+W-H
M965T-38N>&UL4$L! A0#%     @ P8934'P@B9C9 @  < H  !D
M     ( !P9H  'AL+W=O<FMS:&5E=',O<VAE970U-RYX;6Q02P$"% ,4
M" #!AE-0M"L'G,("  #\"0  &0              @ '1G0  >&PO=V]R:W-H
M965T<R]S:&5E=#4X+GAM;%!+ 0(4 Q0    ( ,&&4U!M71W>6@(  'L'   9
M              "  <J@  !X;"]W;W)K<VAE971S+W-H965T-3DN>&UL4$L!
M A0#%     @ P8934+,<]XFW @  JPD  !D              ( !6Z,  'AL
M+W=O<FMS:&5E=',O<VAE970V,"YX;6Q02P$"% ,4    " #!AE-0$6R6R:<!
M  "; P  &0              @ %)I@  >&PO=V]R:W-H965T<R]S:&5E=#8Q
M+GAM;%!+ 0(4 Q0    ( ,&&4U"XY?"H3 ,  $L/   9              "
M 2>H  !X;"]W;W)K<VAE971S+W-H965T-C(N>&UL4$L! A0#%     @ P893
M4.K-M<M* @  S@<  !D              ( !JJL  'AL+W=O<FMS:&5E=',O
M<VAE970V,RYX;6Q02P$"% ,4    " #!AE-0Y!>ST[("  "="0  &0
M        @ $KK@  >&PO=V]R:W-H965T<R]S:&5E=#8T+GAM;%!+ 0(4 Q0
M   ( ,&&4U!GI<JJ;P,  /\-   9              "  12Q  !X;"]W;W)K
M<VAE971S+W-H965T-C4N>&UL4$L! A0#%     @ P8934 $;?!T< @  H@4
M !D              ( !NK0  'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6Q0
M2P$"% ,4    " #!AE-0BU'3/)P"  "["   &0              @ $-MP
M>&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;%!+ 0(4 Q0    ( ,&&4U"IO^4Y
MJ0,  + /   9              "  >"Y  !X;"]W;W)K<VAE971S+W-H965T
M-C@N>&UL4$L! A0#%     @ P8934,=B%1GN 0  VP0  !D
M ( !P+T  'AL+W=O<FMS:&5E=',O<VAE970V.2YX;6Q02P$"% ,4    " #!
MAE-059D:-6L"   P"   &0              @ 'EOP  >&PO=V]R:W-H965T
M<R]S:&5E=#<P+GAM;%!+ 0(4 Q0    ( ,&&4U BGJ3V)0(   \&   9
M          "  8?"  !X;"]W;W)K<VAE971S+W-H965T-S$N>&UL4$L! A0#
M%     @ P8934-3E;AKA 0  T00  !D              ( !X\0  'AL+W=O
M<FMS:&5E=',O<VAE970W,BYX;6Q02P$"% ,4    " #!AE-0H3(BY.H!   %
M!0  &0              @ '[Q@  >&PO=V]R:W-H965T<R]S:&5E=#<S+GAM
M;%!+ 0(4 Q0    ( ,&&4U#99- P)P(  )4&   9              "  1S)
M  !X;"]W;W)K<VAE971S+W-H965T-S0N>&UL4$L! A0#%     @ P8934+TL
MPC@! @  OP4  !D              ( !>LL  'AL+W=O<FMS:&5E=',O<VAE
M970W-2YX;6Q02P$"% ,4    " #!AE-0\YY;V_L!  "^!0  &0
M    @ &RS0  >&PO=V]R:W-H965T<R]S:&5E=#<V+GAM;%!+ 0(4 Q0    (
M ,&&4U!CE+-*(@(  #4&   9              "  >3/  !X;"]W;W)K<VAE
M971S+W-H965T-S<N>&UL4$L! A0#%     @ P8934!XI+*.= 0  6 ,  !D
M             ( !/=(  'AL+W=O<FMS:&5E=',O<VAE970W."YX;6Q02P$"
M% ,4    " #!AE-0[W[?+T@"   U!P  &0              @ $1U   >&PO
M=V]R:W-H965T<R]S:&5E=#<Y+GAM;%!+ 0(4 Q0    ( ,&&4U!-TI9DG@D
M /T\   9              "  9#6  !X;"]W;W)K<VAE971S+W-H965T.# N
M>&UL4$L! A0#%     @ P8934/M>5Q+H @  Z0H  !D              ( !
M9>   'AL+W=O<FMS:&5E=',O<VAE970X,2YX;6Q02P$"% ,4    " #!AE-0
M=Z][(>X*   =2P  &0              @ &$XP  >&PO=V]R:W-H965T<R]S
M:&5E=#@R+GAM;%!+ 0(4 Q0    ( ,&&4U 4'X>IX@(  ,\+   9
M      "  :GN  !X;"]W;W)K<VAE971S+W-H965T.#,N>&UL4$L! A0#%
M  @ P8934$^%/W3. 0  IP0  !D              ( !PO$  'AL+W=O<FMS
M:&5E=',O<VAE970X-"YX;6Q02P$"% ,4    " #!AE-0>4 'XD0"   \!P
M&0              @ ''\P  >&PO=V]R:W-H965T<R]S:&5E=#@U+GAM;%!+
M 0(4 Q0    ( ,&&4U J54%&-P0  ,82   9              "  4+V  !X
M;"]W;W)K<VAE971S+W-H965T.#8N>&UL4$L! A0#%     @ P8934)-H42?#
M 0  9@0  !D              ( !L/H  'AL+W=O<FMS:&5E=',O<VAE970X
M-RYX;6Q02P$"% ,4    " #!AE-0E9@A(_BN  "JKP( %
M@ &J_   >&PO<VAA<F5D4W1R:6YG<RYX;6Q02P$"% ,4    " #!AE-07RA0
M#$@"  !:"P  #0              @ '4JP$ >&PO<W1Y;&5S+GAM;%!+ 0(4
M Q0    ( ,&&4U -GT!:5 <  %<Y   /              "  4>N 0!X;"]W
M;W)K8F]O:RYX;6Q02P$"% ,4    " #!AE-0*4#JF*<"  #:,P  &@
M        @ '(M0$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4
M    " #!AE-0AO0+<CD"  !5,@  $P              @ &GN $ 6T-O;G1E
C;G1?5'EP97-=+GAM;%!+!08     8 !@ %(:   1NP$    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6714505360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment and Related Information - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>USD ($) </div>
<div>segment </div>
<div>business_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2018 </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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_NumberOfBusinessUnits', window );">Number of business units | business_unit</a></td>
<td class="nump">6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="nump">$ 20.8<span></span>
</td>
<td class="nump">$ 2.2<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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember', window );">Enterprise Software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segment | segment</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="nump">$ 12.6<span></span>
</td>
<td class="nump">$ 2.2<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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember', window );">Appraisal and Tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForCapitalImprovements', window );">Payment for construction to expand building</a></td>
<td class="nump">$ 8.2<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_tyl_NumberOfBusinessUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 business units.</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;">tyl_NumberOfBusinessUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForCapitalImprovements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for acquisition of or capital improvements to properties held for investment (operating, managed, leased) or for use.</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=118932676&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_PaymentsForCapitalImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember</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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember</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>62
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6824207408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems', window );"><strong>Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Total segment operating income</a></td>
<td class="nump">$ 156,367<span></span>
</td>
<td class="nump">$ 152,492<span></span>
</td>
<td class="nump">$ 162,758<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_AmortizationOfIntangibleAssets', window );">Amortization of customer and trade name intangibles</a></td>
<td class="num">(52,800)<span></span>
</td>
<td class="num">(39,600)<span></span>
</td>
<td class="num">(35,500)<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_OtherNonoperatingIncomeExpense', window );">Other income (expense), net</a></td>
<td class="nump">3,471<span></span>
</td>
<td class="nump">3,378<span></span>
</td>
<td class="nump">698<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">159,838<span></span>
</td>
<td class="nump">155,870<span></span>
</td>
<td class="nump">163,456<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_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember', window );">Operating Segments And Corporate Non Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems', window );"><strong>Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Total segment operating income</a></td>
<td class="nump">208,454<span></span>
</td>
<td class="nump">191,681<span></span>
</td>
<td class="nump">197,825<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_ConsolidationItemsAxis=us-gaap_MaterialReconcilingItemsMember', window );">Segment Reconciling Items</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems', window );"><strong>Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSoldAmortization', window );">Amortization of acquired software</a></td>
<td class="num">(30,642)<span></span>
</td>
<td class="num">(22,972)<span></span>
</td>
<td class="num">(21,686)<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_AmortizationOfIntangibleAssets', window );">Amortization of customer and trade name intangibles</a></td>
<td class="num">(21,445)<span></span>
</td>
<td class="num">(16,217)<span></span>
</td>
<td class="num">(13,381)<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_OtherNonoperatingIncomeExpense', window );">Other income (expense), net</a></td>
<td class="nump">$ 3,471<span></span>
</td>
<td class="nump">$ 3,378<span></span>
</td>
<td class="nump">$ 698<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=118932676&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_CostOfGoodsAndServicesSoldAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service.</p></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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&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_CostOfGoodsAndServicesSoldAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://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=68072869&amp;loc=d3e41242-110953<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(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&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 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=116637232&amp;loc=SL114874131-224263<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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&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_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=116634182&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_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems</td>
</tr>
<tr>
<td style="padding-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_srt_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember</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_ConsolidationItemsAxis=us-gaap_MaterialReconcilingItemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_MaterialReconcilingItemsMember</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>63
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6833142000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Schedule of lease cost (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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</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 " 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="nump">$ 6,379<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease cost</a></td>
<td class="nump">2,269<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_VariableLeaseCost', window );">Variable lease cost</a></td>
<td class="nump">1,274<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Net lease cost</a></td>
<td class="nump">$ 9,922<span></span>
</td>
<td class="nump">$ 7,400<span></span>
</td>
<td class="nump">$ 6,900<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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease cost recognized by lessee for lease contract.</p></div>
<a 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> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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=77888399&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_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_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=77888399&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=77888426&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_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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=77888399&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_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<a 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 (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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=77888399&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_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>64
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821316288">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2018 </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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent', window );">2019</a></td>
<td class="nump">$ 5,994<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_OperatingLeasesFutureMinimumPaymentsDueInTwoYears', window );">2020</a></td>
<td class="nump">5,146<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_OperatingLeasesFutureMinimumPaymentsDueInThreeYears', window );">2021</a></td>
<td class="nump">3,976<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_OperatingLeasesFutureMinimumPaymentsDueInFourYears', window );">2022</a></td>
<td class="nump">1,925<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_OperatingLeasesFutureMinimumPaymentsDueInFiveYears', window );">2023</a></td>
<td class="nump">1,164<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_OperatingLeasesFutureMinimumPaymentsDueThereafter', window );">Thereafter</a></td>
<td class="nump">2,132<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesFutureMinimumPaymentsDue', window );">Total</a></td>
<td class="nump">$ 20,337<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasesFutureMinimumPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year.</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 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueInFiveYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueInFourYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueInThreeYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueInTwoYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingLeasesFutureMinimumPaymentsDueThereafter">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 10<br> -Section 55<br> -Paragraph 40<br> -Subparagraph (Note 3)<br> -URI http://asc.fasb.org/extlink&amp;oid=82846649&amp;loc=d3e38371-112697<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>65
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823288864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Deferred Commissions (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Capitalized Contract Cost [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNet', window );">Deferred commissions</a></td>
<td class="nump">$ 29.8<span></span>
</td>
<td class="nump">$ 21.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostAmortization', window );">Deferred commissions amortization</a></td>
<td class="nump">$ 17.8<span></span>
</td>
<td class="nump">$ 15.6<span></span>
</td>
<td class="nump">$ 11.2<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Capitalized Contract Cost [Line Items]</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_tyl_SalesCommissionsAmortizationPeriod', window );">Sales commissions amortization period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostLineItems', window );"><strong>Capitalized Contract Cost [Line Items]</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_tyl_SalesCommissionsAmortizationPeriod', window );">Sales commissions amortization period</a></td>
<td class="text">7 years<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_tyl_SalesCommissionsAmortizationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sales Commissions Amortization 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;">tyl_SalesCommissionsAmortizationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_CapitalizedContractCostAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a 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 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=68051541&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CapitalizedContractCostLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostLineItems</td>
</tr>
<tr>
<td style="padding-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_CapitalizedContractCostNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a 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 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=68051541&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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>66
<FILENAME>R9999.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6828122464">
<tr>
<th class="tl" colspan="1">Label</th>
<th class="tl"><strong>Element</strong></th>
<th class="th" colspan="1">Value</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_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption', window );">Cumulative Effect of New Accounting Principle in Period of Adoption</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</td>
<td class="num">$ (1,116,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember', window );">Retained Earnings [Member]</a></td>
<td class="th" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption', window );">Cumulative Effect of New Accounting Principle in Period of Adoption</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</td>
<td class="num">$ (1,116,000)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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) to equity or (increase) decrease to net assets, resulting from the cumulative effect adjustment of a new accounting principle applied in the period of adoption.</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_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RetainedEarningsMember</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>67
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6727507440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 12,814<span></span>
</td>
<td class="nump">$ 9,110<span></span>
</td>
<td class="nump">$ 22,883<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_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">6,585<span></span>
</td>
<td class="nump">4,367<span></span>
</td>
<td class="nump">4,666<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current income tax expense benefit</a></td>
<td class="nump">19,399<span></span>
</td>
<td class="nump">13,477<span></span>
</td>
<td class="nump">27,549<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred</a></td>
<td class="num">(6,088)<span></span>
</td>
<td class="num">(5,069)<span></span>
</td>
<td class="num">(33,664)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense benefit</a></td>
<td class="nump">$ 13,311<span></span>
</td>
<td class="nump">$ 8,408<span></span>
</td>
<td class="num">$ (6,115)<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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 federal 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=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: 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> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=116825942&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 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 state and local 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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 3: 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> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<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 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: 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=26873400&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 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6848508256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " 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">$ 840,117<span></span>
</td>
<td class="nump">$ 753,718<span></span>
</td>
<td class="nump">$ 657,987<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">616,051<span></span>
</td>
<td class="nump">461,234<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">237,137<span></span>
</td>
<td class="nump">184,382<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember', window );">Customer related intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">$ 321,019<span></span>
</td>
<td class="nump">$ 238,219<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Amortizable intangibles, Weighted Average Amortization Period</a></td>
<td class="text">16 years<span></span>
</td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">$ 97,320<span></span>
</td>
<td class="nump">$ 78,120<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember', window );">Acquired software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">$ 262,286<span></span>
</td>
<td class="nump">$ 202,416<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Amortizable intangibles, Weighted Average Amortization Period</a></td>
<td class="text">7 years<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">$ 130,416<span></span>
</td>
<td class="nump">$ 99,772<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade names</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">$ 22,905<span></span>
</td>
<td class="nump">$ 16,905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Amortizable intangibles, Weighted Average Amortization Period</a></td>
<td class="text">11 years<span></span>
</td>
<td class="text">11 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">$ 7,205<span></span>
</td>
<td class="nump">$ 5,139<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember', window );">Capitalized software development costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">$ 4,804<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Amortizable intangibles, Weighted Average Amortization Period</a></td>
<td class="text">5 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">$ 296<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember', window );">Leases acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite Lived Intangible Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Amortizable intangibles, Gross carrying amount</a></td>
<td class="nump">$ 5,037<span></span>
</td>
<td class="nump">$ 3,694<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Amortizable intangibles, Weighted Average Amortization Period</a></td>
<td class="text">9 years<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Amortizable intangibles, Accumulated Amortization</a></td>
<td class="nump">$ 1,900<span></span>
</td>
<td class="nump">$ 1,351<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_AcquiredFiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization period of finite-lived intangible assets acquired either individually or as part of a group of 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>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 1<br> -Subparagraph (a)(3)<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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://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=77989000&amp;loc=SL49117168-202975<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 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=tyl_SoftwareAcquiredMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_LeasesAcquiredInPlaceMember</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>69
<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>70
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817394368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfStockholdersEquityTableTextBlock', window );">Summary of Activities in Common Stock</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table details activity in our common stock:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="21"/></tr><tr><td style="width:35%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="20" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option exercises</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>999</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>96,908</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>74,907</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,113</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,845</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchases of common stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(72</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(14,289</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(781</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(150,050</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(44</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,613</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Employee stock plan purchases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,576</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,051</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>51</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,044</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Restricted stock units vested, net of withheld shares upon award settlement</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,361</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfStockholdersEquityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 changes in the separate accounts comprising stockholders' equity (in addition to retained earnings) and of the changes in the number of shares of equity securities during at least the most recent annual fiscal period and any subsequent interim period presented is required to make the financial statements sufficiently informative if both financial position and results of operations are presented.</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=109259400&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_ScheduleOfStockholdersEquityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817269280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment and Related Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Revenues and Operations</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>92,567</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,638</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>285,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11,260</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>185,892</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,169</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>405,063</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,255</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,735</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>64,289</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>926</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11,457</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,672</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>261,494</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,789</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(73,829</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208,454</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,384</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,379</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>38,098</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>834,010</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,536</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,267,068</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,191,614</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>83,735</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,706</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>210,740</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,807</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>166,921</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>24,348</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,904</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>24,617</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,745</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>32</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>50,130</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>914</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,715</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>61,759</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>237,159</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,094</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(68,572</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,681</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,973</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>782</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,377</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,132</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>556,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>63,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,171,193</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,790,963</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="16"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017 </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>78,388</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,854</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>164,317</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,859</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>161,245</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,215</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>337,701</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,057</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization expense</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>43,987</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>760</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,648</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,395</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment operating income</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229,001</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,788</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(51,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>197,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capital expenditures</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28,096</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,181</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,341</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45,618</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Segment assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>365,736</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,279</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,199,336</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,611,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock', window );">Reconciliation of Operating Income from Segments to Consolidated</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:84.44444444444444%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:61%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Reconciliation of reportable segment operating</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">income to the Company's consolidated totals:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total segment operating income</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208,454</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,681</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>197,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of acquired software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(30,642</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(22,972</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(21,686</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization of customer and trade name intangibles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(21,445</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(16,217</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,381</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other income (expense), net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,471</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,378</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>698</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>159,838</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,870</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>163,456</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of profit (loss) from reportable segments to the consolidated income (loss) before income tax expense (benefit) and discontinued operations. Includes, but is not limited to, reconciliation after income tax if income tax is allocated to the reportable 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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8924-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=115929826&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_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8813-108599<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> -URI http://asc.fasb.org/extlink&amp;oid=108376223&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8721-108599<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&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_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817247536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHAREHOLDERS&#8217; EQUITY<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">SHAREHOLDERS&#8217; EQUITY</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">SHAREHOLDERS&#8217; EQUITY</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table details activity in our common stock:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="21"/></tr><tr><td style="width:35%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="20" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option exercises</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>999</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>96,908</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>74,907</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,113</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,845</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchases of common stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(72</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(14,289</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(781</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(150,050</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(44</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,613</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Employee stock plan purchases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,576</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,051</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>51</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,044</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Restricted stock units vested, net of withheld shares upon award settlement</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,361</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">February&#160;19, 2020</span><span style="font-family:inherit;font-size:10pt;">, we had authorization from our board of directors to repurchase up to </span><span style="font-family:inherit;font-size:10pt;"><span>2.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> additional shares of our common stock.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830927968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>GOODWILL AND OTHER INTANGIBLE ASSETS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">GOODWILL AND OTHER INTANGIBLE ASSETS</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">GOODWILL AND OTHER INTANGIBLE ASSETS</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The changes in the carrying amount of goodwill for the two years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> are as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:63%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;and Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>651,430</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>657,987</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of Socrata</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,657</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,657</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,074</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,074</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2018</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>747,161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>753,718</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to the purchase of MicroPact</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>76,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill acquired related to other acquisitions</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,080</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,080</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance as of 12/31/2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>833,560</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,557</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,117</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other intangible assets and related accumulated amortization consists of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross carrying amount of other intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>321,019</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>238,219</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>262,286</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>202,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,804</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,037</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>616,051</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>461,234</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated amortization</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(237,137</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(184,382</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total other intangibles, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>378,914</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>276,852</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:12pt;">&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization expense for acquired software and capitalized software development costs are recorded to cost of revenues. Amortization expense for customer relationships and trade names are recorded to selling, general and administrative expenses. Total amortization expense for other intangibles was </span><span style="font-family:inherit;font-size:10pt;"><span>$52.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$39.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$35.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.&#160;</span></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The amortization periods of other intangible assets is summarized in the following table:</span><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="22"/></tr><tr><td style="width:35%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Gross</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Carrying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortization</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Period</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accumulated Amortization</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Goodwill</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,117</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>753,718</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amortizable intangibles:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Customer related intangibles</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>321,019</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>97,320</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>238,219</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>78,120</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Acquired software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>262,286</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>130,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>202,416</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>99,772</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Trade names</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,905</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>11 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,139</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Capitalized software development costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,804</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Leases acquired</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,037</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,694</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10 years</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,351</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense related to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be </span><span style="font-family:inherit;font-size:10pt;"><span>$525,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2020</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$525,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2021</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$525,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2022</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$525,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2023</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$525,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2024</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$512,000</span></span><span style="font-family:inherit;font-size:10pt;"> thereafter</span><span style="font-family:inherit;font-size:9pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs is as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:62.77777777777778%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>54,045</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,687</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,989</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,838</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>31,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,005</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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> -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_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6604647440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EMPLOYEE BENEFIT PLANS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PostemploymentBenefitsAbstract', window );"><strong>Postemployment Benefits [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock', window );">EMPLOYEE BENEFIT PLANS</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">EMPLOYEE BENEFIT PLANS</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to </span><span style="font-family:inherit;font-size:10pt;"><span>30%</span></span><span style="font-family:inherit;font-size:10pt;"> of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of </span><span style="font-family:inherit;font-size:10pt;"><span>3%</span></span><span style="font-family:inherit;font-size:10pt;"> of an employee&#8217;s compensation to the plan.&#160;We made contributions to the plan and charged operating results </span><span style="font-family:inherit;font-size:10pt;"><span>$11.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$9.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$7.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of an entity's employee compensation and benefit plans, excluding share-based compensation and including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, life insurance, severance, health care, unemployment and other benefit plans.</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 712<br> -URI http://asc.fasb.org/topic&amp;trid=2197446<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -URI http://asc.fasb.org/topic&amp;trid=2127225<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PostemploymentBenefitsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PostemploymentBenefitsAbstract</td>
</tr>
<tr>
<td style="padding-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>tyl12312019-10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2019-01-31"
  xmlns:tyl="http://www.tylertech.com/20191231"
  xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="tyl-20191231.xsd" xlink:type="simple"/>
    <context id="FD2019Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="I2020Q1Feb18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2020-02-18</instant>
        </period>
    </context>
    <context id="FI2019Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2019-06-30</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareLicensesandRoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SoftwareServicesMaintenanceandSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AcquiredSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="I2019Q1Jan01_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-01</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="I2019Q1Jan01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <instant>2019-01-01</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</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="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">tyl:RecordHoldingsPtyLimitedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis">tyl:RetentionReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q3YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-09-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q2QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis">tyl:RetentionReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis">us-gaap:UnbilledRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-01</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:SubscriptionAndCirculationSaaSArrangementsServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-02-28</instant>
        </period>
    </context>
    <context id="D2018Q3aug31_us-gaap_BusinessAcquisitionAxis_tyl_CaseloadPROLPMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CaseloadPROLPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-08-31</startDate>
            <endDate>2018-08-31</endDate>
        </period>
    </context>
    <context id="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-04-30</startDate>
            <endDate>2018-04-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SageDataSecurityLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SageDataSecurityLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-04-30</startDate>
            <endDate>2018-04-30</endDate>
        </period>
    </context>
    <context id="I2019Q4Oct30_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-10-30</instant>
        </period>
    </context>
    <context id="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CourthouseTechnologiesLtdMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-30</startDate>
            <endDate>2019-10-30</endDate>
        </period>
    </context>
    <context id="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-02-28</startDate>
            <endDate>2019-02-28</endDate>
        </period>
    </context>
    <context id="D2017Q3AUG_us-gaap_BusinessAcquisitionAxis_tyl_DigitalHealthDepartmentInc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:DigitalHealthDepartmentInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-08-02</startDate>
            <endDate>2017-08-02</endDate>
        </period>
    </context>
    <context id="D2019Q1Feb1_us-gaap_BusinessAcquisitionAxis_tyl_CivicLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:CivicLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-02-01</startDate>
            <endDate>2019-02-01</endDate>
        </period>
    </context>
    <context id="I2018Q2april30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-04-30</instant>
        </period>
    </context>
    <context id="D2018Q4oct1_us-gaap_BusinessAcquisitionAxis_tyl_TradeMasterInc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:TradeMasterInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-10-01</endDate>
        </period>
    </context>
    <context id="D2018Q4Dec07_us-gaap_BusinessAcquisitionAxis_tyl_SceneDoc.Inc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SceneDoc.Inc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-07</startDate>
            <endDate>2018-12-07</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MicroPactAndMyCivicMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MicroPactAndMyCivicMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="D2017Q4NOV_us-gaap_BusinessAcquisitionAxis_tyl_Radio1033LLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:Radio1033LLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-11-29</startDate>
            <endDate>2017-11-29</endDate>
        </period>
    </context>
    <context id="D2017Q2MAY_us-gaap_BusinessAcquisitionAxis_tyl_Modria.comMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:Modria.comMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-05-30</startDate>
            <endDate>2017-05-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tyl:LathamNewYorkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_YarmouthMaineMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tyl:YarmouthMaineMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:BuildingAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tyl:ComputerEquipmentAndPurchasedSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:LeasesAcquiredInPlaceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tyl:SoftwareAcquiredMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:MPHoldingsParentInc.dbaMicroPactMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tyl:SocrataInc.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_ShortTermDebtTypeAxis_us-gaap_LetterOfCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tyl:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-02-19</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tyl:RestrictedStockUnitandPerformanceStockUnitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">tyl:CostOfSoftwareServicesMaintenanceAndSubscriptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_srt_RangeAxis_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FI2019Q4_srt_RangeAxis_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:OperatingSegmentsAndCorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:MaterialReconcilingItemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">tyl:CorporateAndEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:HardwareandOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:SubscriptionAndCirculationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:TechnologyServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tyl:AppraisalServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:LicenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:EnterpriseSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:NonrecurringRevenueMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tyl:AppraisalAndTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tyl:RecurringRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2020-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2018-10-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="FD2019Q3QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="FD2018Q3QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2018-07-01</startDate>
            <endDate>2018-09-30</endDate>
        </period>
    </context>
    <context id="FD2018Q1QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <context id="FD2018Q2QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2018-04-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="FD2019Q1QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000860731</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <unit id="letters_of_credit">
        <measure>tyl:letters_of_credit</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>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="subsidiary">
        <measure>tyl:subsidiary</measure>
    </unit>
    <unit id="segment">
        <measure>tyl:segment</measure>
    </unit>
    <unit id="legal_matter">
        <measure>tyl:legal_matter</measure>
    </unit>
    <unit id="business_unit">
        <measure>tyl:business_unit</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="FD2019Q4YTD"
      id="Fact-948211530FEF65733BBAA8A414301E16-wk-Fact-948211530FEF65733BBAA8A414301E16">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="FD2019Q4YTD"
      id="Fact-5C02BC6E296E0E18E286A94EC5CE38E8-wk-Fact-5C02BC6E296E0E18E286A94EC5CE38E8">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus
      contextRef="FD2019Q4YTD"
      id="Fact-49653BFE60137FBE514DA8A413FA0014-wk-Fact-49653BFE60137FBE514DA8A413FA0014">FY</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus
      contextRef="FD2019Q4YTD"
      id="Fact-CC4B11CE931313D2C3D5A8A4145041AD-wk-Fact-CC4B11CE931313D2C3D5A8A4145041AD">2019</dei:DocumentFiscalYearFocus>
    <dei:EntityCentralIndexKey
      contextRef="FD2019Q4YTD"
      id="Fact-70F04E808263F92FA88EA8A4146C647F-wk-Fact-70F04E808263F92FA88EA8A4146C647F">0000860731</dei:EntityCentralIndexKey>
    <tyl:RemainingEstimatedEconomicLife
      contextRef="FD2019Q4YTD"
      id="Fact-7D46A2592C7CF49839DD44EE965C608D-wk-Fact-7D46A2592C7CF49839DD44EE965C608D">P5Y</tyl:RemainingEstimatedEconomicLife>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MaximumMember"
      id="Fact-ECF8958BD2CEFD9871F4A8BF5EF6B3C8-wk-Fact-ECF8958BD2CEFD9871F4A8BF5EF6B3C8">P3Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_srt_RangeAxis_srt_MinimumMember"
      id="Fact-01E9E1086A297A20F7F9A8BF2E9DB7AA-wk-Fact-01E9E1086A297A20F7F9A8BF2E9DB7AA">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember"
      id="Fact-F8FE39A06D22C809A9A3A8BDC77D1525-wk-Fact-F8FE39A06D22C809A9A3A8BDC77D1525">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      id="Fact-7520DA5D9C25CB643CA7A8C724B111F2-wk-Fact-7520DA5D9C25CB643CA7A8C724B111F2">P1Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerPaymentTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      id="Fact-5CA53F7ADE571EBBB06A2F9F41AB3E16-wk-Fact-5CA53F7ADE571EBBB06A2F9F41AB3E16">P30D</tyl:RevenueFromContractWithCustomerPaymentTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MinimumMember"
      id="Fact-2C1442A5674F1BE943FCA8BE266D6D5B-wk-Fact-2C1442A5674F1BE943FCA8BE266D6D5B">P3Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      id="Fact-130017D73FF7F665FE6EA8BD7DC28861-wk-Fact-130017D73FF7F665FE6EA8BD7DC28861">P3Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      id="Fact-745F43E8AB12C5A012B5A8C04DC7AEA4-wk-Fact-745F43E8AB12C5A012B5A8C04DC7AEA4">P3Y</tyl:SalesCommissionsAmortizationPeriod>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-EED93D0C4D28ED7679DFA8A41450EAE4-wk-Fact-EED93D0C4D28ED7679DFA8A41450EAE4"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-8AFDE256490EA957D994A8A41440AA1A-wk-Fact-8AFDE256490EA957D994A8A41440AA1A"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-49E4F475A06DA26DE7E7A8A41444D3C6-wk-Fact-49E4F475A06DA26DE7E7A8A41444D3C6"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-5633C250DCE942335274A8A414406432-wk-Fact-5633C250DCE942335274A8A414406432"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-0936DBFBEEE02B123591A8A414503AF1-wk-Fact-0936DBFBEEE02B123591A8A414503AF1"
      unitRef="shares">48147969</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-D75183BB130CC54EDEB7A8A41438AADD-wk-Fact-D75183BB130CC54EDEB7A8A41438AADD"
      unitRef="shares">48147969</us-gaap:CommonStockSharesIssued>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="FD2017Q4YTD"
      decimals="0"
      id="Fact-C0FAF529882CBDDB865FA8A414286B3A-wk-Fact-C0FAF529882CBDDB865FA8A414286B3A"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="FD2018Q4YTD"
      decimals="0"
      id="Fact-72B6356A712FE21FF33FA8A4142C2FC4-wk-Fact-72B6356A712FE21FF33FA8A4142C2FC4"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="FD2017Q4YTD"
      decimals="INF"
      id="Fact-E93EF2EC8A66AFBC8EE2A8A4142C972A-wk-Fact-E93EF2EC8A66AFBC8EE2A8A4142C972A"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="FD2018Q4YTD"
      decimals="INF"
      id="Fact-C83F582989866200B52CA8A4142C7992-wk-Fact-C83F582989866200B52CA8A4142C7992"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="FD2017Q4YTD"
      decimals="INF"
      id="Fact-20E75505C66FD0AF93DAA8A4142CC048-wk-Fact-20E75505C66FD0AF93DAA8A4142CC048"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="FD2018Q4YTD"
      decimals="INF"
      id="Fact-DFDBB6369BA3EB38BD1FA8A4143052C0-wk-Fact-DFDBB6369BA3EB38BD1FA8A4143052C0"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-F3AA839B09CBF4740DECA8A4143876FE-wk-Fact-F3AA839B09CBF4740DECA8A4143876FE"
      unitRef="usdPerShare">10.00</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-B8CF3AF2463FEC9DA070A8A414440CE4-wk-Fact-B8CF3AF2463FEC9DA070A8A414440CE4"
      unitRef="usdPerShare">10.00</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-3D3F7BA7B2DC3B3A2B91A8A4143C68D5-wk-Fact-3D3F7BA7B2DC3B3A2B91A8A4143C68D5"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-D5BB2B6738495EF5E6FFA8A414482947-wk-Fact-D5BB2B6738495EF5E6FFA8A414482947"
      unitRef="shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-C66B66186D94BE1CAD93A8A4143C48AF-wk-Fact-C66B66186D94BE1CAD93A8A4143C48AF"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-4F82E8DB8574E36D0B49A8A4144C7197-wk-Fact-4F82E8DB8574E36D0B49A8A4144C7197"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember"
      id="Fact-641093AA82E9E491A006A8A413F6C431-wk-Fact-641093AA82E9E491A006A8A413F6C431">P39Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember"
      id="Fact-7828F7610A84BC509E23A8A413F678E9-wk-Fact-7828F7610A84BC509E23A8A413F678E9">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember"
      id="Fact-81A7A0C0A455993BF452A8A413F6CA80-wk-Fact-81A7A0C0A455993BF452A8A413F6CA80">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember"
      id="Fact-FC4BCE16DAADF17DC86FA8A413F6964D-wk-Fact-FC4BCE16DAADF17DC86FA8A413F6964D">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      id="Fact-A30828361E3212D7493AA8EDB20D00EE-wk-Fact-A30828361E3212D7493AA8EDB20D00EE">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="Fact-1DE8DDC1E50DA4AC44A9A8C2096E2E12-wk-Fact-1DE8DDC1E50DA4AC44A9A8C2096E2E12">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="Fact-60E51B9415E736589932A8C265BD9707-wk-Fact-60E51B9415E736589932A8C265BD9707">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:TreasuryStockShares
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-9D2C3E93AC3333DE916FA8A4143CC190-wk-Fact-9D2C3E93AC3333DE916FA8A4143CC190"
      unitRef="shares">9872505</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-23025D420FD6A8921A2AA8A414489BE4-wk-Fact-23025D420FD6A8921A2AA8A414489BE4"
      unitRef="shares">8839352</us-gaap:TreasuryStockShares>
    <dei:DocumentType
      contextRef="FD2019Q4YTD"
      id="d48711479e609-wk-Fact-3032AEC5021219D3B3A7A92C2BA78E2D">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="FD2019Q4YTD"
      id="d48711479e623-wk-Fact-A81B3457578414B46883A93010A67F5E">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="FD2019Q4YTD"
      id="d48711479e635-wk-Fact-B6A26983FFDB40F55D53A93083E8FF5E">2019-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="FD2019Q4YTD"
      id="d48711479e654-wk-Fact-88909BFADEFDDDB2F0FAA93177EB710B">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="FD2019Q4YTD"
      id="d48711479e663-wk-Fact-8774328790848717A9BDA9343E0467A2">1-10485</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="FD2019Q4YTD"
      id="d48711479e679-wk-Fact-65D911D4DD11AC654425A9371666FB08">TYLER TECHNOLOGIES, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="FD2019Q4YTD"
      id="d48711479e700-wk-Fact-1D120F6BBF48713B8857A9379234F159">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="FD2019Q4YTD"
      id="d48711479e710-wk-Fact-A8ADB8666558DBCEED0CA937B44B6A6D">75-2303920</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="FD2019Q4YTD"
      id="d48711479e738-wk-Fact-2BE263F9BE355B16DA18A939DAC6D717">5101 Tennyson Parkway</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="FD2019Q4YTD"
      id="d48711479e754-wk-Fact-81AA926F5268E3C67658A93DDFC5434D">Plano,</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="FD2019Q4YTD"
      id="d48711479e759-wk-Fact-9161F3E010CC02CA09C1A93E02A7C422">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="FD2019Q4YTD"
      id="d48711479e764-wk-Fact-08FAA8459DBFE83BBECEA937FFFC78C6">75024</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="FD2019Q4YTD"
      id="d48711479e786-wk-Fact-21663C05A7D8D1BA963CA93FB7B43A47">972</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="FD2019Q4YTD"
      id="d48711479e791-wk-Fact-D63CE68D8A8786499B28A93FD7656CC1">713-3700</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="FD2019Q4YTD"
      id="d48711479e834-wk-Fact-1628C041619DB539CD2CA940A282C03E">COMMON STOCK, $0.01 PAR VALUE</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="FD2019Q4YTD"
      id="d48711479e839-wk-Fact-C20F1A4AAC67197511A130564F6F8784">TYL</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="FD2019Q4YTD"
      id="d48711479e844-wk-Fact-6CB0F2BE1B48D79E3135A9407801A3A1">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="FD2019Q4YTD"
      id="d48711479e869-wk-Fact-4022D36D00250A44224EA94763220766">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="FD2019Q4YTD"
      id="d48711479e883-wk-Fact-5DB1783C1E3062BAD0CCA94731797D90">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="FD2019Q4YTD"
      id="d48711479e893-wk-Fact-16F9236D0D6737E68532A948309FD0C6">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="FD2019Q4YTD"
      id="d48711479e916-wk-Fact-CE4B5C4E00048F0621F9A94874DAB6DB">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="FD2019Q4YTD"
      id="d48711479e950-wk-Fact-B63A417B521F6D2C175BA9499F845630">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="FD2019Q4YTD"
      id="d48711479e1054-wk-Fact-A11AA5791D180C4894C8A949F3675F7F">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="FD2019Q4YTD"
      id="d48711479e1090-wk-Fact-87BFA3B62A8126EDBE85A949F4908092">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="FD2019Q4YTD"
      id="d48711479e1131-wk-Fact-269191241FE2ACF7DFE8A94A74C509C0">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="FI2019Q2"
      decimals="-3"
      id="d48711479e1141-wk-Fact-7B3799B198D47F12DDA4C767947F3F7D"
      unitRef="usd">8172267000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="I2020Q1Feb18"
      decimals="INF"
      id="d48711479e1156-wk-Fact-6A5C2A605A0CF75A076AC767DB5E3939"
      unitRef="shares">39396000</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-4353DD133BCF7275F17EA92EB8EC42BB-0-wk-Fact-6D49B2A5E360F0123EB6A92ECD74B7EF">Certain information required by Part III of this annual report is incorporated by reference from the registrant&#x2019;s definitive proxy statement for its annual meeting of stockholders to be held on May&#160;12, 2020.&lt;div style="line-height:120%;padding-top:5px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="1"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:100%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;border-bottom:1px solid #000000;"&gt;&lt;div style="overflow:hidden;height:5px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e740-wk-Fact-E56FA557169E9FF13F65A8A4145C55A6"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e759-wk-Fact-FC526AB86C5AD218B9D9A8A41458D6F3"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e778-wk-Fact-B58A88984BC3DD8A8884A8A41478C2B0"
      unitRef="usd">86242000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48736321e794-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48736321e813-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48736321e832-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B"
      unitRef="usd">172176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48736321e853-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48736321e872-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48736321e891-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE"
      unitRef="usd">180460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48736321e912-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48736321e931-wk-Fact-76F25FED2DABCB1C31E1A8A414705457"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48736321e950-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA"
      unitRef="usd">359319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e971-wk-Fact-0E5534002B43682C9563A8A4144C2123"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e990-wk-Fact-CD0030531C7695000F44A8A413FA941D"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e1009-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8"
      unitRef="usd">25023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1030-wk-Fact-F2ADE67C5C61DE8CF087A8A41450BC9A"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1049-wk-Fact-B1EB65257A76BD031A77A8A41402B795"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1068-wk-Fact-894E1C2079EDB6068C09A8A413EEC339"
      unitRef="usd">17679000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1089-wk-Fact-864F481B04E356A536C8A8A41464106D"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1108-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1127-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3"
      unitRef="usd">840899000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e1273-wk-Fact-6C2EB84373A650EFEB38A8A41458E807"
      unitRef="usd">3938000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e1292-wk-Fact-09CBC2ACE49846F7E9ACA8A41424077D"
      unitRef="usd">3802000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareLicensesandRoyaltiesMember"
      decimals="-3"
      id="d48736321e1311-wk-Fact-067C09EB7A09FE6FD164A8A413FAE2D0"
      unitRef="usd">3321000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember"
      decimals="-3"
      id="d48736321e1332-wk-Fact-B7BA5EE889F4BB1198C5A8A414788B75"
      unitRef="usd">30642000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember"
      decimals="-3"
      id="d48736321e1351-wk-Fact-DB33FE2820A9D6FA2256A8A413FE2519"
      unitRef="usd">22972000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AcquiredSoftwareMember"
      decimals="-3"
      id="d48736321e1370-wk-Fact-D27459C26B4C85F5BBD9A8A41474E337"
      unitRef="usd">21686000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember"
      decimals="-3"
      id="d48736321e1391-wk-Fact-797EC12F10302DE8AD03A8A41458DF6A"
      unitRef="usd">502138000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember"
      decimals="-3"
      id="d48736321e1410-wk-Fact-EF98512901AED6A601EAA8A414686880"
      unitRef="usd">438923000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_SoftwareServicesMaintenanceandSubscriptionsMember"
      decimals="-3"
      id="d48736321e1429-wk-Fact-41109F4E276700A7B3B0A8A41402AA7E"
      unitRef="usd">387634000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e1450-wk-Fact-66ACA866C799D2B02477A8A4144015B1"
      unitRef="usd">15337000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e1469-wk-Fact-3269429CE300290862B2A8A4146CA411"
      unitRef="usd">14299000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48736321e1488-wk-Fact-98E74863941D41C187E9A8A414740F48"
      unitRef="usd">16286000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1509-wk-Fact-777BF2022C0DF4DBA237A8A4147C415E"
      unitRef="usd">17472000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1528-wk-Fact-31FFA0B934E3D02D902AA8A413E5B3BE"
      unitRef="usd">15708000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48736321e1547-wk-Fact-209F5B30E837ACCC8276A8A413E1090A"
      unitRef="usd">12595000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1568-wk-Fact-6B8CB3B487D4F19953CBA8A4144048DF"
      unitRef="usd">569527000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1587-wk-Fact-A4BB60C0061E70458DC9A8A414708E06"
      unitRef="usd">495704000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1606-wk-Fact-3FEBB01B22F95307C497A8A413F2B677"
      unitRef="usd">441522000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1689-wk-Fact-35C8E7921B78C23D16AEA8A4146881EC"
      unitRef="usd">516900000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1708-wk-Fact-9B750E89E00489AE1F1FA8A4146012A4"
      unitRef="usd">439578000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1727-wk-Fact-261A1BE7F02787BB740FA8A414409F7E"
      unitRef="usd">399377000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1810-wk-Fact-43D7E2A236BACE1A3F3CA8A41402B71C"
      unitRef="usd">257746000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1829-wk-Fact-5AEE1F6D9EF061A09579A8A413FE3493"
      unitRef="usd">207605000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1848-wk-Fact-7A37823C4499E533FB76A8A413EA4637"
      unitRef="usd">175914000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1869-wk-Fact-5A09D0F247EB98F46B45A8A41402EAE9"
      unitRef="usd">81342000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1888-wk-Fact-2480687F0D3247F4AE99A8A413EE3E35"
      unitRef="usd">63264000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1907-wk-Fact-06EEE3FA8E44C0ACE905A8A4145C605A"
      unitRef="usd">47324000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e1929-wk-Fact-7966AC61C464E8AD8E6EA8A414608991"
      unitRef="usd">21445000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e1948-wk-Fact-B3FA2AA3C6625DE418DCA8A41454998D"
      unitRef="usd">16217000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <tyl:AmortizationofCustomerandTradeNamesIntangibleAssets
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e1967-wk-Fact-8464AB9D34789E1EDD9FA8A414787CE5"
      unitRef="usd">13381000</tyl:AmortizationofCustomerandTradeNamesIntangibleAssets>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e2050-wk-Fact-89405A0CBDD732779B3FA8A41406A406"
      unitRef="usd">156367000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e2069-wk-Fact-37B22B4657ED2BF30797A8A414065BED"
      unitRef="usd">152492000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e2088-wk-Fact-B887E12049251737E16EA8A414249C98"
      unitRef="usd">162758000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e2171-wk-Fact-A476B206641FB223FFB6A8A414283564"
      unitRef="usd">3471000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e2190-wk-Fact-59A7EECEFFA4179EC344A8A41438EB15"
      unitRef="usd">3378000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e2209-wk-Fact-91EE002D3D4CD395BBB9A8A414385899"
      unitRef="usd">698000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e2230-wk-Fact-AAECBAE1D97EC9A3A19DA8A41402C8CC"
      unitRef="usd">159838000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e2249-wk-Fact-0639764666086D738A60A8A41406E4E7"
      unitRef="usd">155870000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e2268-wk-Fact-8A85652EFFEF7972B095A8A413FAC43E"
      unitRef="usd">163456000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e2289-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e2308-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e2327-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406"
      unitRef="usd">-6115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48736321e2354-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48736321e2373-wk-Fact-83D597512074D1ADC051A8A4143010C1"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48736321e2392-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C"
      unitRef="usd">169571000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48736321e2537-wk-Fact-EE9A2901D384EFA28CDDA8A413F60C40"
      unitRef="usdPerShare">3.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48736321e2556-wk-Fact-06C0F412053A2394EE5EA8A413EEE587"
      unitRef="usdPerShare">3.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48736321e2575-wk-Fact-074963B3383E675F2128A8A4143C4090"
      unitRef="usdPerShare">4.55</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48736321e2597-wk-Fact-E90DD5B91EA2DBB2BA7BA8A413FA5F46"
      unitRef="usdPerShare">3.65</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48736321e2616-wk-Fact-0E479A1F4C6D148993EBA8A414504516"
      unitRef="usdPerShare">3.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48736321e2635-wk-Fact-EDCED98D78B4DC7353B5A8A4145C170F"
      unitRef="usdPerShare">4.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e772-wk-Fact-15BF7D0FDA926441A68EA8A4146884D3"
      unitRef="usd">232682000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e791-wk-Fact-AE2A97FACC445AC6DE55A8A41450F62B"
      unitRef="usd">134279000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e806-wk-Fact-D6BAFBC61E43F960712DA8A414706031"
      unitRef="usd">374089000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e825-wk-Fact-CB46D0B1F38E01055003A8A41438D44A"
      unitRef="usd">298912000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ShortTermInvestments
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e845-wk-Fact-3DA27C2A9E5B5883FADBA8A4146802FB"
      unitRef="usd">39399000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e864-wk-Fact-16745946E172B65F6A96A8A4144C1367"
      unitRef="usd">44306000</us-gaap:ShortTermInvestments>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e884-wk-Fact-53BAEB379588AD3DDCF7A8A41468E8AC"
      unitRef="usd">24717000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e903-wk-Fact-22CD1DB0094537EC1FA8A8A41402C13F"
      unitRef="usd">33258000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:IncomeTaxReceivable
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e923-wk-Fact-2E0B4D1BE624BA31319EA8A414486A67"
      unitRef="usd">6482000</us-gaap:IncomeTaxReceivable>
    <us-gaap:IncomeTaxReceivable
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e942-wk-Fact-22E6B3A9783180824092A8A414680676"
      unitRef="usd">4697000</us-gaap:IncomeTaxReceivable>
    <us-gaap:OtherAssetsCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e962-wk-Fact-47393ECA1F7A843F711CA8A413EAA552"
      unitRef="usd">2328000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e981-wk-Fact-4F8AD3E5AD5CC2FFAD7BA8A41470EFCE"
      unitRef="usd">3406000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1001-wk-Fact-C28423C29FD9EF612491A8A413EAC132"
      unitRef="usd">679697000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1020-wk-Fact-1F9A44D13683B2A875DCA8A4146C19EC"
      unitRef="usd">518858000</us-gaap:AssetsCurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1082-wk-Fact-DFDF99CF9DA1438584B4A8A413E549E2"
      unitRef="usd">22432000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1101-wk-Fact-AABC73FA098C1E522C64A8A413FADA3D"
      unitRef="usd">16020000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1121-wk-Fact-8DE440BE3BCA3C99E80A1113DBF6BD1F"
      unitRef="usd">18992000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1160-wk-Fact-956974638BE1AC793DF0A8A413F65492"
      unitRef="usd">171861000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1179-wk-Fact-BA04C938D77311E9754AA8A414440441"
      unitRef="usd">155177000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1240-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1259-wk-Fact-3BDECAB71ABF01038FDAA8A414486727"
      unitRef="usd">753718000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1279-wk-Fact-ED05E32393E8186CAB92A8A413F686D1"
      unitRef="usd">378914000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1298-wk-Fact-445367394A1A9150FBB3A8A4146C26AC"
      unitRef="usd">276852000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:InvestmentsAndOtherNoncurrentAssets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1318-wk-Fact-430D8519792B8BBD87ABA8A414506FB1"
      unitRef="usd">79601000</us-gaap:InvestmentsAndOtherNoncurrentAssets>
    <us-gaap:InvestmentsAndOtherNoncurrentAssets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1337-wk-Fact-082FFCD3E110178EA5B6A8A413E1D303"
      unitRef="usd">70338000</us-gaap:InvestmentsAndOtherNoncurrentAssets>
    <us-gaap:Assets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1362-wk-Fact-7BC0663EBF709B61711AA8A4140A8042"
      unitRef="usd">2191614000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1381-wk-Fact-EE621A7A1F9B03681BD2A8A4146CCC2A"
      unitRef="usd">1790963000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1525-wk-Fact-1093568AC14B2CA7AFA1A8A413F69C9C"
      unitRef="usd">14977000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1544-wk-Fact-63DCFBE27DB25F189E53A8A41450ED0F"
      unitRef="usd">6910000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1559-wk-Fact-0C8B9460C27847D09583A8A414744443"
      unitRef="usd">75234000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1578-wk-Fact-603BC66574C110E7A142A8A41460AFDA"
      unitRef="usd">66480000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1598-wk-Fact-B5B71B1D8A703078B130111525DB16D4"
      unitRef="usd">6387000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1637-wk-Fact-0DFAB3826EBF4B415B36A8A414747497"
      unitRef="usd">412495000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1656-wk-Fact-38F7B780573E7F39E974A8A41468DE0E"
      unitRef="usd">350512000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1676-wk-Fact-C79E160830231976EEA8A8A4145CB5AA"
      unitRef="usd">509093000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1695-wk-Fact-4928F0847220E23BF5C0A8A413E1F646"
      unitRef="usd">423902000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermLineOfCredit
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1756-wk-Fact-A6D9B4F6E43353046399A8A413F276BD"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:LongTermLineOfCredit
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1775-wk-Fact-4DB0B2CA10220C9D5178A8A41470519A"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1795-wk-Fact-C292C11A93A5A4AC19ADA8A41468E320"
      unitRef="usd">199000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1814-wk-Fact-2A7D760869FF9D936C80A8A413EE1A07"
      unitRef="usd">424000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1834-wk-Fact-61ACCC72BF67E8EEF21CA8A41450A4BF"
      unitRef="usd">48442000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e1853-wk-Fact-F7951A36B54F17406325A8A41478A7EF"
      unitRef="usd">41791000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e1873-wk-Fact-5D28A059EFA776F6383A1115FAEFC609"
      unitRef="usd">16822000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:CommitmentsAndContingencies
      contextRef="FI2019Q4"
      id="d48738427e1954-wk-Fact-2C80B6333C1F214E7242A8A41444EF02"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="FI2018Q4"
      id="d48738427e1973-wk-Fact-B8277156F51F36969D77A8A4146C44AF"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2073-wk-Fact-300D0AF7F4B08311E6E6A8A4144CC5AB"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2092-wk-Fact-0C46B3B95369A2641898A8A4142CAAFE"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2115-wk-Fact-3163C82927CDD90BEF20A8A414586C36"
      unitRef="usd">481000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2134-wk-Fact-9D9FF0F1E335D35B492DA8A4144404E3"
      unitRef="usd">481000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2154-wk-Fact-5B9ED4B5780E5C0AC071A8A414683029"
      unitRef="usd">739478000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2173-wk-Fact-46B0B77BC6202C8AFFF5A8A414029FA9"
      unitRef="usd">731435000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2193-wk-Fact-BB41CC8378F827BC4A91A8A4145CEC6A"
      unitRef="usd">-46000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2213-wk-Fact-FFE9F393BF26C535480FA8A413F25158"
      unitRef="usd">-46000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2234-wk-Fact-DB16C997A3CBB114B17FA8A41458E99C"
      unitRef="usd">917336000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2253-wk-Fact-8783C9C1E6C49C9A4B52A8A413EE123A"
      unitRef="usd">771925000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2273-wk-Fact-699EE41355D9A968F915A8A41464E970"
      unitRef="usd">40191000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2293-wk-Fact-52151248F3215FFD5063A8A414509CF7"
      unitRef="usd">178949000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2314-wk-Fact-4774501615700080E3D8A8A4144C427D"
      unitRef="usd">1617058000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2333-wk-Fact-5F57FF702B17A917AE41A8A414742257"
      unitRef="usd">1324846000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48738427e2359-wk-Fact-92A643BF6CA2FC88A5EFA8A4145803B4"
      unitRef="usd">2191614000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48738427e2378-wk-Fact-4336FAA4AD14F4FA4679A8A4145CCC7A"
      unitRef="usd">1790963000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e740-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e759-wk-Fact-83D597512074D1ADC051A8A4143010C1"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e778-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C"
      unitRef="usd">169571000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e856-wk-Fact-5069B9CC264DD2E934F7A8A413FA6FB3"
      unitRef="usd">76672000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e875-wk-Fact-2C4E3579DF72EB46466AA8A41430355B"
      unitRef="usd">61759000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e894-wk-Fact-5869AE5BE9721B78EF21A8A413F6174D"
      unitRef="usd">53395000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e915-wk-Fact-8C4C0E3DAC91D0F64CD3A8A414065B2E"
      unitRef="usd">59967000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e934-wk-Fact-833C186BB62ED2C08642A8A4141863B1"
      unitRef="usd">52740000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e953-wk-Fact-366E178F7210EAEAF5D2A8A413F65CE1"
      unitRef="usd">37348000</us-gaap:ShareBasedCompensation>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e974-wk-Fact-E69256B485146BDF1DBAA8A41434AAA4"
      unitRef="usd">1636000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e993-wk-Fact-1F2986CB3DABB65208A4A8A4145C5DD1"
      unitRef="usd">-569000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1013-wk-Fact-C27CFDB272548DED7536A8A41434102F"
      unitRef="usd">2031000</us-gaap:ProvisionForDoubtfulAccounts>
    <tyl:OperatingLeaseRightOfUseAssetsNonCash
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1034-wk-Fact-C05BC479FC7A1E5847F71129ACE4BB0C"
      unitRef="usd">5397000</tyl:OperatingLeaseRightOfUseAssetsNonCash>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1093-wk-Fact-233FBB96D5386B99336EA8A414023908"
      unitRef="usd">-6088000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1113-wk-Fact-DF8D9632546CC2F32587A8A41428077F"
      unitRef="usd">-5069000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1133-wk-Fact-04C2B2FDC17E67C3ED11A8A4142CBF29"
      unitRef="usd">-33664000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1220-wk-Fact-D511BCA8BB90E6D678BFA8A4146045AF"
      unitRef="usd">65738000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1240-wk-Fact-EEC8358C057D3DB64320A8A4141C5B7D"
      unitRef="usd">50916000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1260-wk-Fact-8C132933961B89816ECBA8A414126FEF"
      unitRef="usd">33091000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1283-wk-Fact-6059F82E8DEA5DDEDC75A8A413FADFFC"
      unitRef="usd">1925000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1303-wk-Fact-7C0DBCB0C025A9E4D266A8A4140E4F91"
      unitRef="usd">-6642000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1322-wk-Fact-6C5859324006BD69F992A8A4141CBE20"
      unitRef="usd">8444000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1344-wk-Fact-3AC349E9EE5ED08B1E8EA8A41428979F"
      unitRef="usd">8976000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1364-wk-Fact-E18BC6DAD402B9A1EFC4A8A4141873E1"
      unitRef="usd">588000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1384-wk-Fact-F284670B12D5DB3E865EA8A41430E4C7"
      unitRef="usd">6958000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1406-wk-Fact-5760BCE4D9C97A4A7816A8A4140EA6B5"
      unitRef="usd">7403000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1425-wk-Fact-E5F317731D4C5B8C5A27A8A414282DB2"
      unitRef="usd">-2416000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1445-wk-Fact-CDCE80EAEF0CC5A813C7A8A413FEFCA7"
      unitRef="usd">878000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <tyl:IncreaseDecreaseInOperatingLeaseLiabilities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1466-wk-Fact-3DC1AF765163B4E31A0D112A711B827C"
      unitRef="usd">-6113000</tyl:IncreaseDecreaseInOperatingLeaseLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1526-wk-Fact-14E41697849980336C63A8A414385C02"
      unitRef="usd">1516000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1545-wk-Fact-B2352E0282A091C85A7EA8A414182EF3"
      unitRef="usd">-2445000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1565-wk-Fact-29ABC570007232D4B26DA8A413E5994A"
      unitRef="usd">6050000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1586-wk-Fact-4BAAC803E4CF47D0E188A8A41434EB79"
      unitRef="usd">44442000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1605-wk-Fact-D9F3DC023062486232D2A8A414123F62"
      unitRef="usd">43603000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1624-wk-Fact-F6214EC1B113467F4A79A8A4141C9212"
      unitRef="usd">8639000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1645-wk-Fact-797D827369AC63357BB3A8A4145C53D0"
      unitRef="usd">254720000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1664-wk-Fact-35AA46EC22C6A7DFEDF3A8A41424383B"
      unitRef="usd">250203000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1683-wk-Fact-317CB46B30C16A267C1AA8A41434FA59"
      unitRef="usd">195755000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1828-wk-Fact-15752F6F3D27BC539579113281043AD5"
      unitRef="usd">37236000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1848-wk-Fact-BAD75C0A52E9DFAA2982113280F17E9E"
      unitRef="usd">27424000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1868-wk-Fact-8F4BB987F70FA9CBF008113280FA988D"
      unitRef="usd">43057000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1890-wk-Fact-1094F32C0DC852D89560A8A41418D922"
      unitRef="usd">54742000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1910-wk-Fact-DE8836EEE08E612BED22A8A41418980D"
      unitRef="usd">115625000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1930-wk-Fact-AE15160B576806C9C025A8A41402B889"
      unitRef="usd">59779000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e1953-wk-Fact-5691B0397C1B65442359A8A4142C41D9"
      unitRef="usd">70796000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e1972-wk-Fact-45674DA129E4493FA02AA8A414180D20"
      unitRef="usd">81205000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e1991-wk-Fact-A7BD0EAE53FB7DBF936FA8A41424F790"
      unitRef="usd">28786000</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:PaymentsForSoftware
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2012-wk-Fact-82446D8C2CE0A0BC2C5811335CBB564D"
      unitRef="usd">4804000</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsForSoftware
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2032-wk-Fact-F5503292F2A213356E1B11335CB2AAE1"
      unitRef="usd">0</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsForSoftware
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2051-wk-Fact-99AA8B48F8873576C33D11335CAD24D2"
      unitRef="usd">0</us-gaap:PaymentsForSoftware>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2072-wk-Fact-65B9882DD1EEE668CA16A8A41460E9AA"
      unitRef="usd">218734000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2092-wk-Fact-CCB0F71EA18ED313FC6FA8A414283309"
      unitRef="usd">178093000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2112-wk-Fact-CE883B2676F5DCF790B1A8A4143C57BD"
      unitRef="usd">11344000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2134-wk-Fact-B7E7E2CBC45B9DE8A305A8A41418F3C8"
      unitRef="usd">295000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2154-wk-Fact-E7D4846D7259B90874B0A8A413FEAE39"
      unitRef="usd">-1682000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2173-wk-Fact-4527C10E6ECC617BFE0CA8A414125852"
      unitRef="usd">1000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2195-wk-Fact-CF7895747654AD7C15BFA8A41438A8A9"
      unitRef="usd">-245015000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2215-wk-Fact-6F042F0121CC2DD04BD9A8A41430365C"
      unitRef="usd">-238255000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2235-wk-Fact-9F838A9FCCD5B697FC61A8A414188DCF"
      unitRef="usd">-85395000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2381-wk-Fact-CF50050E5C06501AF236A8A4145CF9E2"
      unitRef="usd">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2400-wk-Fact-5F51A12F73C5D09A68F5A8A414021B62"
      unitRef="usd">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2419-wk-Fact-2D730431C8BF4A91601DA8A413F25871"
      unitRef="usd">10000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2441-wk-Fact-5F9DE65C3E1992717415A8A41434BF72"
      unitRef="usd">17786000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2461-wk-Fact-66C8A602A5D2863141E7A8A413FEE27B"
      unitRef="usd">146553000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2481-wk-Fact-C6D8887E94CB918C3445A8A413FE429A"
      unitRef="usd">7474000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2503-wk-Fact-80D7571A4D4FAAEF6EC6A8A413FA569E"
      unitRef="usd">96908000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2522-wk-Fact-60B1A85A5E4FA010041CA8A414347028"
      unitRef="usd">74907000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2541-wk-Fact-2C96B69C3663E722CB9DA8A4145CCB8A"
      unitRef="usd">49845000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2562-wk-Fact-972F67CF906DC5C60829113DC3964448"
      unitRef="usd">9576000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2581-wk-Fact-E5966ADA7A282AB737DC113DC41D1709"
      unitRef="usd">8051000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2600-wk-Fact-6400EB7C1A756F3C63E8113DC35C9502"
      unitRef="usd">7044000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2622-wk-Fact-9C5436F65B180B6C6B25A8A414129DFB"
      unitRef="usd">88698000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2641-wk-Fact-A168420C8B4BAEE135C8A8A4140E6538"
      unitRef="usd">-63595000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2661-wk-Fact-DFE60ECF0B38340EA404A8A41418D609"
      unitRef="usd">39415000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745001e2744-wk-Fact-122B6EE15047BF44C356A8A4140EC683"
      unitRef="usd">98403000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745001e2763-wk-Fact-AD2BA9658CAF9E418E6DA8A41438461D"
      unitRef="usd">-51647000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745001e2783-wk-Fact-FCFD9D193002CD2F06E3A8A413FA0787"
      unitRef="usd">149775000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48745001e2804-wk-Fact-1B4A5C73E49FE29FD08DA8A414120EBA"
      unitRef="usd">134279000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48745001e2823-wk-Fact-CABB0CAD8BCD7B7AE7A9A8A41412D99D"
      unitRef="usd">185926000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2016Q4"
      decimals="-3"
      id="d48745001e2842-wk-Fact-502AFF4971087F8103FFA8A41402D4D0"
      unitRef="usd">36151000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48745001e2868-wk-Fact-D9D8A33FC5895A3C276AA8A4141296F2"
      unitRef="usd">232682000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48745001e2887-wk-Fact-1B4A5C73E49FE29FD08DA8A414120EBA"
      unitRef="usd">134279000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48745001e2906-wk-Fact-CABB0CAD8BCD7B7AE7A9A8A41412D99D"
      unitRef="usd">185926000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SharesIssued
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e966-wk-Fact-FBD0B62B7408FB0E1B70A8A414343355"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e985-wk-Fact-09E84A60933771A636A9A8A4142C4CFE"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e1004-wk-Fact-4614F572280CF119C6A6A8A4142CBFDF"
      unitRef="usd">556663000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d48745000e1024-wk-Fact-8CC9499E393071A59194A8A4142CDE82"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e1044-wk-Fact-8710A02B444B8264FC15A8A414245FBD"
      unitRef="usd">454892000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1058-wk-Fact-D5AFD6BD86AA13E023EAA8A41418DA57"
      unitRef="shares">11382000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1079-wk-Fact-6A9EDE482BAE623C2B0EA8A41418C4A7"
      unitRef="usd">-77449000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4"
      decimals="-3"
      id="d48745000e1099-wk-Fact-3F53B5EC4A5CE860166DA8A4142404F1"
      unitRef="usd">934541000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e1186-wk-Fact-128AF9A5198713F2EA91A8A41424A7FC"
      unitRef="usd">169571000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745000e1239-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C"
      unitRef="usd">169571000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e1292-wk-Fact-A84A767535FE14D953C9A8A41434FB23"
      unitRef="usd">28174000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1350-wk-Fact-3AB9909DF2657EDD41A7A8A41434274A"
      unitRef="shares">1113000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1365-wk-Fact-87FE6E24DDF40D7A7C01A8A4141818DA"
      unitRef="usd">21671000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745000e1384-wk-Fact-22D5F1AA9D4A31160287A8A41424BEB1"
      unitRef="usd">49845000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e1437-wk-Fact-E0E21AC3CC3E5B671849A8A4141CCD14"
      unitRef="usd">37348000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745000e1529-wk-Fact-95DAD12B25FE1449C59BA8A414287AFC"
      unitRef="usd">37348000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e1582-wk-Fact-DF48B7ABA0797740EA31A8A4142CB188"
      unitRef="usd">4682000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1640-wk-Fact-1E5E7953B939D7AE9F5DA8A4143015C1"
      unitRef="shares">51000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1655-wk-Fact-0345CF54A43061463F17A8A4141C43D1"
      unitRef="usd">2362000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745000e1674-wk-Fact-335CD0EC08D6891C8C0FA8A414180718"
      unitRef="usd">7044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1785-wk-Fact-95018487A0FE65C11B1BA8A414380AA6"
      unitRef="shares">44000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1801-wk-Fact-C7189E6ABEACFEA14402A8A41424D508"
      unitRef="usd">6613000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48745000e1821-wk-Fact-7532671C68CAEB127061A8A414187D5D"
      unitRef="usd">6613000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e1842-wk-Fact-185D68431B30981C1503A8A4142CDF65"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e1856-wk-Fact-3486250EF7C7C5DB2C32A8A414303CFB"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e1875-wk-Fact-058C23A1088C4FEFF429A8A4142886BA"
      unitRef="usd">626867000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d48745000e1895-wk-Fact-1557CF0E9C3A09D70CE1A8A41424E60D"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e1915-wk-Fact-B1580E0D627AC924E251A8A4142C3B8A"
      unitRef="usd">624463000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1934-wk-Fact-E413A911B001508B8119A8A4141C7C2B"
      unitRef="shares">10262000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e1950-wk-Fact-C62270AD8E6803905774A8A41418C1E7"
      unitRef="usd">-60029000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48745000e1970-wk-Fact-F3E6A51EB1585B391DC9A8A4143091A9"
      unitRef="usd">1191736000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e2062-wk-Fact-622CFBB28DAC1CCADBF6A8A414304287"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745000e2115-wk-Fact-83D597512074D1ADC051A8A4143010C1"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e2168-wk-Fact-E542A97875B701752816A8A4141CC1F0"
      unitRef="usd">44458000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2226-wk-Fact-99FFAA58CB741647FD7BA8A41420635B"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2241-wk-Fact-D80DDE1B1B5449A108A8A8A414186915"
      unitRef="usd">30449000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745000e2260-wk-Fact-AE38038BB58589E8B718A8A4143452CC"
      unitRef="usd">74907000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e2314-wk-Fact-0621787139CA2488F8DDA8A41430CB7F"
      unitRef="usd">52740000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745000e2406-wk-Fact-A2FCCDCE42DE380597E6A8A414287D8A"
      unitRef="usd">52740000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e2459-wk-Fact-D5A185116CA46134703EA8A4141C98A4"
      unitRef="usd">7370000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2517-wk-Fact-F73680283F68BD504163A8A4142416A6"
      unitRef="shares">45000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2532-wk-Fact-D6DAA4334CA741D2B062A8A414303846"
      unitRef="usd">681000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745000e2551-wk-Fact-71D4983CED9ED71F20E0A8A4143C1521"
      unitRef="usd">8051000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2662-wk-Fact-2D208ED96CA970AC0289A8A41418D8FC"
      unitRef="shares">781000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2678-wk-Fact-E78B5356110EECD295CDA8A4141CA593"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48745000e2698-wk-Fact-1FCC20A5B75088524C85A8A41418E545"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e2719-wk-Fact-835E0DE6FCA1960F2A3FA8A414186D68"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e2733-wk-Fact-400DD96F5A6DC2529323A8A414245F66"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e2752-wk-Fact-DB40763F3F240F97587BA8A414344D15"
      unitRef="usd">731435000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d48745000e2772-wk-Fact-A9E72BB7F4A5CE34B256A8A4142C526E"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e2792-wk-Fact-6DA2F5BBCEBC42719E0FA8A4143035A2"
      unitRef="usd">771925000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2811-wk-Fact-0CADFEAECDD990E7F3E7A8A414307B83"
      unitRef="shares">9872000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e2827-wk-Fact-47F2CADACD58EA41EA9EA8A414304EC5"
      unitRef="usd">-178949000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48745000e2847-wk-Fact-5F57FF702B17A917AE41A8A414742257"
      unitRef="usd">1324846000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e2939-wk-Fact-E49CC95B9DACC3A0B7F1A8A414300873"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e2992-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="I2019Q1Jan01_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e3084-wk-Fact-AD41619A5D0878468ECE114B44087078"
      unitRef="usd">-1116000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="I2019Q1Jan01"
      decimals="-3"
      id="d48745000e3138-wk-Fact-9F28AD6B3DC17BEA3709114B4408A77A"
      unitRef="usd">-1116000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e3192-wk-Fact-E31B55612005EBEEF643A8A4141C7EA9"
      unitRef="usd">-52833000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3251-wk-Fact-53F10C66F924055B8BC9A8A4143028A0"
      unitRef="shares">1075000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3266-wk-Fact-B242C8D751CEDB4938F4A8A4142CD97B"
      unitRef="usd">149741000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e3285-wk-Fact-BB00C5D3B67C7629EBDCA8A414343064"
      unitRef="usd">96908000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3396-wk-Fact-FB44AF1809B449BD93EB1156486BE071"
      unitRef="shares">23000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3412-wk-Fact-21331C0635942D5C70E3115581A21620"
      unitRef="usd">5361000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e3432-wk-Fact-0D1308B7AA7AE7D85AE5115581A231C4"
      unitRef="usd">5361000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e3486-wk-Fact-2A21C4966D31B18F8FB2A8A41430C659"
      unitRef="usd">59967000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e3578-wk-Fact-B0D3FACAD9E4E21DFD08A8A414247DA7"
      unitRef="usd">59967000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e3631-wk-Fact-34A9C32FA896932F2872A8A41430BCB7"
      unitRef="usd">909000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3689-wk-Fact-E7458E5DC4CD4E5227E2A8A41434B8F6"
      unitRef="shares">53000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3704-wk-Fact-B14C4B708EEDDD580ACEA8A41424AD0F"
      unitRef="usd">8667000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e3723-wk-Fact-61E43DB65B80D63B215BA8A414247AFE"
      unitRef="usd">9576000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3834-wk-Fact-13206C43F74531688A49A8A41434BE81"
      unitRef="shares">72000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3850-wk-Fact-DD75FA7BE0607A91D24DA8A414305D9B"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48745000e3870-wk-Fact-86CD06ECA10567DA01F3A8A4143462BF"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:SharesIssued
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e3892-wk-Fact-1B0C8D40BE972C328BFBA8A4141CDF3F"
      unitRef="shares">48148000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d48745000e3911-wk-Fact-0CF49A1F13B95E159837A8A4143C9235"
      unitRef="usd">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d48745000e3930-wk-Fact-24346D588F094FAC78C9A8A4142CB3F2"
      unitRef="usd">739478000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d48745000e3950-wk-Fact-FC8C46F8CD14FA877549A8A4142C2D10"
      unitRef="usd">-46000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d48745000e3970-wk-Fact-50A3EA99A79CB13AD862A8A4141C4081"
      unitRef="usd">917336000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e3984-wk-Fact-3D0DEDFF060F68544696A8A4142C07AF"
      unitRef="shares">8839000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember"
      decimals="-3"
      id="d48745000e4005-wk-Fact-7CB868A26A799C95CE59A8A41418ABA6"
      unitRef="usd">-40191000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48745000e4025-wk-Fact-4774501615700080E3D8A8A4144C427D"
      unitRef="usd">1617058000</us-gaap:StockholdersEquity>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B5001BA8FA2924173161A8A41490A1C5-0-wk-Fact-D5E7E89822F04BCB14D4A8A41434F943">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;DESCRIPTION OF BUSINESS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We provide integrated software systems and related services for the public sector, with a focus on local governments. We develop and market a broad line of software solutions and services to address the information technology (&#x201c;IT&#x201d;) needs primarily of cities, counties, schools and other local government entities. In addition, we provide professional IT services, including software and hardware installation, data conversion, training, and for certain customers, product modifications, along with continuing maintenance and support for customers using our systems. We also provide subscription-based services such as software as a service (&#x201c;SaaS&#x201d;) arrangements, which primarily utilize the Tyler private cloud, and electronic document filing solutions (&#x201c;e-filing&#x201d;). In addition, we provide property appraisal outsourcing services for taxing jurisdictions.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;PRINCIPLES OF CONSOLIDATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The consolidated financial statements include our parent company and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;sixteen&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; subsidiaries, which are wholly-owned. All significant intercompany balances and transactions have been eliminated in consolidation. Comprehensive income is defined as the change in equity of a business enterprise during a period from transactions, and other events and circumstances from non-owner sources and includes all components of net income (loss) and other comprehensive income (loss). We had no items of other comprehensive income (loss) during the years ended December 31, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CASH AND CASH EQUIVALENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash in excess of that necessary for operating requirements is invested in short-term, highly liquid, income-producing investments. Investments with original maturities of three months or less are classified as cash and cash equivalents, which primarily consist of cash on deposit with several banks and money market funds. Cash and cash equivalents are stated at cost, which approximates market value.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;REVENUE RECOGNITION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Nature of Products and Services&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#x201c;PCS&#x201d; or &#x201c;maintenance&#x201d;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Identification of the contract, or contracts, with a customer&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Identification of the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Recognition of revenue when, or as, we satisfy a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether those services are highly interdependent or interrelated to the product&#x2019;s functionality. The transaction price is allocated to the distinct performance obligations on a relative standalone selling price (&#x201c;SSP&#x201d;) basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Software Arrangements:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Software Licenses and Royalties&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Many of our software arrangements involve &#x201c;off-the-shelf&#x201d; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#x2019;s purpose upon installation, and remaining services such as training are not considered highly interdependent or interrelated to the product's functionality.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Software license fees are billed in accordance with the contract terms. Typically, a majority of the fee is due when access to the software license is made available to the customer and the remainder of the fee due over a passage of time stipulated by the contract.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We recognize royalty revenue when the sale occurs under the terms of our third-party royalty arrangements. Currently, our third-party royalties are recognized on an estimated basis and are trued up when we receive notice of amounts we are entitled to receive. We typically receive notice of royalty revenues we are entitled to and billed on a quarterly basis in the quarter immediately following the royalty reporting period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Software Services&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As noted above, some of our software arrangements include services considered highly interdependent or highly interrelated or require significant customization to meet the customer's desired functionality. For these software arrangements, both the software licenses and related software services revenue are not distinct and are recognized over time using the progress-to-completion method. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts.  Contract fees are typically billed on a milestone basis as defined within contract terms.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met. When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Post-Contract Customer Support&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Our customers generally enter into PCS agreements when they purchase our software licenses. PCS includes telephone support, bug fixes, and rights to upgrades on a when-and-if available basis. PCS is considered distinct when purchased with our software licenses. Our PCS agreements are typically renewable annually. PCS is recognized over time on a straight-line basis over the period the PCS is provided. All significant costs and expenses associated with PCS are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Computer Hardware Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue allocable to computer hardware equipment is recognized at a point in time when control of the equipment is transferred to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Subscription-Based Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Subscription-based services consist primarily of revenues derived from SaaS arrangements, typically utilizing the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. Our subscription contracts are generally&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or longer in length, billed annually in advance, and non-cancelable.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#x2019;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements services ratably over the term of the arrangement, which range from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;one&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;ten years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, but are typically for a period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Electronic filing transaction fees primarily pertain to documents filed with the courts by attorneys and other third-parties via our e-filing services and retrieval of filed documents via our access services. For each document filed with a court, the filer generally pays a transaction fee and a court filing fee to us and we remit a portion of the transaction fee and the filing fee to the court. We record as revenue the transaction fee, while the portion of the transaction fee remitted to the courts is recorded as cost of revenues as we are acting as a principal in the arrangement. Court filing fees collected on behalf of the courts and remitted to the courts are recorded on a net basis and thus do not affect the statement of comprehensive income. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. In general, when we are the principal in a transaction based on the factors identified in ASC 606-10-55-36 through 55-40, we record the revenue and related costs on a gross basis. Otherwise, we net the cost of revenue associated with the service against the gross revenue (amount billed to the customer) and record the net amount as revenue.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For e-filing transaction fees and other transaction-based revenues, we have the right to charge the customer an amount that directly corresponds with the value to the customer of our performance to date. Therefore, we recognize revenue for these services over time based on the amount billable to the customer in accordance with the 'as invoiced' practical expedient in ASC 606-10-55-18. In some cases, we are paid on a fixed fee basis and recognize the revenue ratably over the contractual period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Costs of performing services under subscription-based arrangements are expensed as incurred, except for certain direct and incremental contract origination and set-up costs associated with SaaS arrangements. Such direct and incremental costs are capitalized and amortized ratably over the useful life.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Appraisal Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;one&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;-year periods and consist of various unique activities. Appraisal services require a significant level of integration and interdependency with various individual service components; therefore, the service components are not considered distinct. Appraisal services are recognized over time by measuring progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often executed over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent. Contract fees are typically billed on a milestone basis as defined within contract terms. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Significant Judgments:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Our contracts with customers often include multiple performance obligations to a customer. When a software arrangement (license or subscription) includes both software licenses and software services, judgment is required to determine whether the software license is considered distinct and accounted for separately, or not distinct and accounted for together with the software services and recognized over time. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt; &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For arrangements that involve significant production, modification or customization of the software, or where software services otherwise cannot be considered distinct, we recognize revenue as control is transferred to the customer over time using progress-to-completion methods. Depending on the contract, we measure progress-to-completion primarily using labor hours incurred, or value added. The progress-to-completion method generally results in the recognition of reasonably consistent profit margins over the life of a contract because we can provide reasonably dependable estimates of contract billings and contract costs. We use the level of profit margin that is most likely to occur on a contract. If the most likely profit margin cannot be precisely determined, the lowest probable level of profit margin in the range of estimates is used until the results can be estimated more precisely. These arrangements are often implemented over an extended time period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Typically, the structure of our arrangements does not give rise to variable consideration.&#160;However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Refer to Note 15 - "Disaggregation of Revenue" for further information, including the economic factors that affect the nature, amount, timing, and uncertainty of revenue and cash flows of our various revenue categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Contract Balances:&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Accounts receivable and allowance for doubtful accounts and sales adjustments&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Timing of revenue recognition may differ from the timing of invoicing to customers. We record an unbilled receivable when revenue is recognized prior to invoicing, or deferred revenue when revenue is recognized subsequent to invoicing. For multi-year agreements, we generally invoice customers annually at the beginning of each annual coverage period. We record an unbilled receivable related to revenue recognized for on-premises licenses as we have an unconditional right to invoice and receive payment in the future related to those licenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#x2019;s financial condition, failure to manage our customer&#x2019;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at beginning of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,396&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,636&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(569&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,031&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Collection of accounts previously written off&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(545&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(211&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at end of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,738&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The allowance for doubtful accounts and sales adjustments reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In connection with our appraisal services contracts and certain software services contracts, we may perform work prior to when the software and services are billable and/or payable pursuant to the contract. Unbilled revenue is not billable at the balance sheet date but is recoverable over the remaining life of the contract through billings made in accordance with contractual agreements. The termination clauses in most of our contracts provide for the payment for the value of products delivered or services performed in the event of early termination. We have historically recorded such unbilled receivables (costs and estimated profit in excess of billings) in connection with (1)&#160;property appraisal services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing normally occurs subsequently and may span another accounting period; (2)&#160;software services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing for the software element of the arrangement may be based upon the specific phase of the implementation; (3)&#160;software revenue for which we have recognized revenue at the point in time when the software is made available to the customer but the billing has not yet been submitted to the customer; (4)&#160;some of our contracts which provide for an amount to be withheld from a progress billing (generally between &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; retention) until final and satisfactory project completion is achieved; and (5)&#160;in a limited number of cases, extended payment terms, which may be granted to customers with whom we generally have a long-term relationship and favorable collection history.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, total current and long-term accounts receivable, net of allowance for doubtful accounts, was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$396.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$314.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. We have recorded unbilled receivables of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$134.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$104.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. Included in unbilled receivables are retention receivables of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$13.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, which become payable upon the completion of the contract or completion of our fieldwork and formal hearings. Unbilled receivables expected to be collected within one year have been included with accounts receivable, current portion in the accompanying consolidated balance sheets. Unbilled receivables and retention receivables expected to be collected past one year have been included with accounts receivable, long-term portion in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;30&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;90 days&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with simplified and predictable ways of purchasing our products and services, not to receive financing from our customers or to provide customers with financing. Examples include invoicing at the beginning of a subscription term with revenue recognized ratably over the contract period, and multi-year on-premises term licenses that are invoiced annually with revenue recognized upfront.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Deferred Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The majority of deferred revenue consists of deferred maintenance revenue that has been billed based on contractual terms in the underlying arrangement, with the remaining balance consisting of payments received in advance of revenue being earned under software licensing, subscription-based services, software and appraisal services and hardware installation. Refer to Note 16 - "Deferred Revenue and Performance Obligations" for further information, including deferred revenue by segment and changes in deferred revenue during the period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Deferred Commissions &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized on a straight-line basis over a period of benefit that we have determined to be&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;seven years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We utilized the "portfolio approach" practical expedient in ASC 606-10-10-4, which allows entities to apply the guidance to a portfolio of contracts with similar characteristics because the effects on the financial statements of this approach would not differ materially from applying the guidance to individual contracts. Using the 'portfolio approach', we determined the period of benefit by taking into consideration our customer contracts, our technology life-cycle and other factors. Sales commissions for renewal contracts are generally not paid in connection with the renewal of a contract.  In the small number of instances where a commission is paid on a renewal, it is not commensurate with the commission paid on the initial sale and is recognized over the term of renewal, which is generally &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of income. Refer to Note 17 - "Deferred Commissions" for further information.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Prepaid expenses and other current assets include direct and incremental costs such as commissions associated with arrangements for which revenue recognition has been deferred. Such costs are expensed at the time the related revenue is recognized.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;USE OF ESTIMATES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The preparation of our financial statements in conformity with accounting principles generally accepted in the United States (&#x201c;GAAP&#x201d;) requires us 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. Significant items subject to such estimates and assumptions include revenue recognition, determining the nature and timing of satisfaction of performance obligations, determining the SSP of performance obligations, variable consideration, and other obligations such as returns and refunds; loss contingencies; the estimated useful life of deferred commissions; the carrying amount and estimated useful lives of intangible assets; the carrying amount of operating lease right-of-use assets and operating lease liabilities; determining share-based compensation expense; the valuation allowance for receivables; and determining the potential outcome of future tax consequences of events that have been recognized on our consolidated financial statements or tax returns. Actual results could differ from estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;PROPERTY AND EQUIPMENT, NET&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property, equipment and purchased software are recorded at original cost and increased by the cost of any significant improvements after purchase. We expense maintenance and repairs when incurred. Depreciation and amortization is calculated using the straight-line method over the shorter of the asset&#x2019;s estimated useful life or the term of the lease in the case of leasehold improvements. For income tax purposes, we use accelerated depreciation methods as allowed by tax laws.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RESEARCH AND DEVELOPMENT COSTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We expensed research and development expense of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$81.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$63.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$47.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;INCOME TAXES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income taxes are accounted for under the asset and liability method. Deferred taxes arise because of different treatment between financial statement accounting and tax accounting, known as &#x201c;temporary differences". We record the tax effect of these temporary differences as &#x201c;deferred tax assets&#x201d; (generally items that can be used as a tax deduction or credit in the future periods) and &#x201c;deferred tax liabilities&#x201d; (generally items that we received a tax deduction for, which have not yet been recorded in the income statement). The deferred tax assets and liabilities are measured using enacted tax rules and laws that are expected to be in effect when the temporary differences are expected to be recovered or settled. A valuation allowance would be established to reduce deferred tax assets if it is more likely than not that a deferred tax asset will not be "realized."&#160;On December 22, 2017, the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;(the &#x201c;Tax Act&#x201d;) was enacted into law. The Tax Act amends the Internal Revenue Code to reduce tax rates and modify policies, credits and deductions for individuals and businesses. For businesses, the Tax Act reduces the corporate U.S. federal tax rate from a maximum of&#160;35%&#160;to a flat&#160;21% rate and transitions from a worldwide tax system to a territorial tax system. Under ASC 740 Income Taxes, the effects of changes in tax rates and laws are recognized in the period in which the new legislation is enacted. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;SHARE-BASED COMPENSATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have a share-based award plan that provides for the grant of stock options, restricted stock units, and performance share units to key employees, directors and non-employee consultants. Stock options generally vest after &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;six years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant and have a contractual term of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. Restricted stock unit grants generally vest ratably over&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Stock Compensation&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. See Note 9 &#x2013; &#x201c;Share-Based Compensation&#x201d; for further information. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill represents the excess of the purchase price over the fair value of net assets acquired, including identifiable intangible assets, in connection with our business combinations. Upon acquisition, goodwill is assigned to the reporting unit that is expected to benefit from the synergies of the business combination, which is the reporting unit to which the related acquired technology is assigned. A reporting unit is the operating segment, or a business unit one level below that operating segment, for which discrete financial information is prepared and regularly reviewed by executive management. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. If it is determined through the evaluation of events or circumstances that the carrying value may not be recoverable, we perform a comparison of the estimated fair value of the reporting unit to which the goodwill has been assigned to the sum of the carrying value of the assets and liabilities of that unit. If the sum of the carrying value of the assets and liabilities of a reporting unit exceeds the estimated fair value of that reporting unit, the carrying value of the reporting unit's goodwill is reduced to its fair value through an adjustment to the goodwill balance, resulting in an impairment charge. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, did &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;t result in an impairment charge. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; There have been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; impairments of intangible assets in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Other Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We make judgments about the recoverability of purchased intangible assets other than goodwill whenever events or changes in circumstances indicate that an impairment may exist. Customer base and acquired software each comprise approximately half of our purchased intangible assets other than goodwill. We review our customer turnover each year for indications of impairment. Our customer turnover has historically been very low.&#160;If indications of impairment are determined to exist, we measure the recoverability of assets by a comparison of the carrying amount of the asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets.  There have been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; impairments of intangible assets in any of the periods presented.&#160;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;IMPAIRMENT OF LONG-LIVED ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We periodically evaluate whether current facts or circumstances indicate that the carrying value of our property and equipment or other long-lived assets to be held and used may not be recoverable. If such circumstances are determined to exist, we measure the recoverability of assets to be held and used by a comparison of the carrying amount of the asset or appropriate grouping of assets and the estimated undiscounted future cash flows expected to be generated by the assets. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated. The assets and liabilities of a disposed group or classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There have been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; significant impairments of long-lived assets in any of the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;COSTS OF COMPUTER SOFTWARE&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We capitalize software development costs upon the establishment of technological feasibility and prior to the availability of the product for general release to customers. Software development costs primarily consist of personnel costs and rent for related office space. We capitalized approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of software development costs in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We begin to amortize capitalized costs when a product is available for general release to customers. Amortization expense is determined on a product-by-product basis at a rate not less than straight-line basis over the product&#x2019;s remaining estimated economic life of, generally, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;five&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. Amortization of software development costs was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$296,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and is included in cost of software license revenue in the accompanying consolidated statements of comprehensive income. We have not capitalized any internal use software development costs in any of the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CONTINGENT PURCHASE CONSIDERATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Contingent future cash payments related to acquisitions are recognized at fair value as of the acquisition date and included in the determination of the acquisition date purchase price. Subsequent changes in the fair value of the contingent future cash payments are recognized in earnings in the period that the change occurs.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;FAIR VALUE OF FINANCIAL INSTRUMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash and cash equivalents, accounts receivables, accounts payables, short-term obligations and certain other assets at cost approximate fair value because of the short maturity of these instruments. The fair value of our revolving line of credit would approximate book value as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, because our interest rates reset approximately every 30 days or less. See Note 6 &#x2013; &#x201c;Revolving Line of Credit&#x201d; for further discussion.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we have &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$81.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020 through 2023&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;We intend to hold these bonds to maturity and have classified them as such.&#160;We believe cost approximates fair value.&#160;The fair values of these securities are considered Level II as they are based on inputs from quoted prices in markets that are not active or from other observable market data. These investments are included in short-term investments and non-current investments and other assets.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we have &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$15.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; invested in convertible preferred stock representing a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings. The investment in convertible preferred stock is accounted under the cost method because we do not have the ability to exercise significant influence over the investee and the securities do not have readily determinable fair values. Our investment is carried at cost less any impairment write-downs. Our cost method investments are assessed annually for impairment. We do not reassess the fair value of cost method investments if there are no identified events or changes in circumstances that may have a significant adverse effect on the fair value of the investments. There has been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; impairment of our cost method investment for the periods presented. This investment is included in non-current investments and other assets in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CONCENTRATIONS OF CREDIT RISK &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents, accounts receivable from trade customers, and investments in marketable securities. Our cash and cash equivalents primarily consist of operating account balances and money market funds, which are maintained at several major domestic financial institutions and the balances often exceed insured amounts. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had cash and cash equivalents of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$232.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We perform periodic evaluations of the credit standing of these financial institutions.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Concentrations of credit risk with respect to receivables are limited due to the size and geographical diversity of our customer base. Historically, our credit losses have not been significant. As a result, we do not believe we have any significant concentrations of credit risk as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#x2019;s financial condition, failure to manage our customer&#x2019;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;LEASES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We determine if an arrangement is a lease at inception. Operating leases are included in operating lease right-of-use (&#x201c;ROU&#x201d;) assets, and operating lease liabilities, current and long-term, on our consolidated balance sheets. We currently do not have any finance lease arrangements. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease ROU assets and operating lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date of the lease in determining the present value of future payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives and initial direct costs incurred. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term. Leases with an initial term of 12 months or less are not recorded on the balance sheet; we recognize lease expense for these leases on a straight-line basis over the lease term. We have lease agreements with lease and non-lease components, which are generally accounted for as a single lease component. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;INDEMNIFICATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Most of our software license agreements indemnify our customers in the event that the software sold infringes upon the intellectual property rights of a third-party. These agreements typically provide that in such event we will either modify or replace the software so that it becomes non-infringing or procure for the customer the right to use the software. We have recorded no liability associated with these indemnifications, as we are not aware of any pending or threatened infringement actions that are possible losses. We believe the estimated fair value of these intellectual property indemnification clauses is minimal.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have also agreed to indemnify our officers and board members if they are named or threatened to be named as a party to any proceeding by reason of the fact that they acted in such capacity. We maintain directors&#x2019; and officers&#x2019; liability insurance coverage to protect against any such losses. We have recorded no liability associated with these indemnifications. Because of our insurance coverage, we believe the estimated fair value of these indemnification agreements is minimal.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RECLASSIFICATIONS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Certain amounts for previous years have been reclassified to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:16px;padding-top:16px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Leases.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; We adopted ASU No. 2016-02, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Leases&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; ("Topic 842") using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of the lease arrangement. The impact of adoption is reflected in the financial information herein. For additional details, see Note 11 to our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of ROU assets and operating lease liabilities, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and continue to have none as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Amounts recognized at January 1, 2019, for operating leases were as follow (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:589px;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:488px;"/&gt;&lt;td style="width:5px;"/&gt;&lt;td style="width:9px;"/&gt;&lt;td style="width:83px;"/&gt;&lt;td style="width:3px;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,633&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,344&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease liabilities, long-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(12,405&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Retained earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,116&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;NEW ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2016, the FASB issued ASU 2016-13,&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Financial Instruments -&#160;Credit&#160;Losses,&lt;/span&gt;&#160;(&#x201c;ASU 2016-13&#x201d;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#x2019;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020. We have evaluated the impact of this standard on our consolidated financial statements, including accounting policies, processes and systems. Based on the nature of the Company's customer base and historical nature of losses, we do not expect the impact to be material upon adoption.</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-14394E8DEE3C6F6CBE0BA8A4149003BF-0-wk-Fact-DD46CED41E0915CBC791A8A41468B4F5">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;PRINCIPLES OF CONSOLIDATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The consolidated financial statements include our parent company and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;sixteen&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; subsidiaries, which are wholly-owned. All significant intercompany balances and transactions have been eliminated in consolidation. Comprehensive income is defined as the change in equity of a business enterprise during a period from transactions, and other events and circumstances from non-owner sources and includes all components of net income (loss) and other comprehensive income (loss). We had no items of other comprehensive income (loss) during the years ended December 31, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <tyl:NumberOfWhollyOwnedSubsidiaries
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48746316e597-wk-Fact-77A82FE193703687973C4168E733A2C4"
      unitRef="subsidiary">16</tyl:NumberOfWhollyOwnedSubsidiaries>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-5D7CF5C5870EFBD40701A8A414902F5C-0-wk-Fact-2D85366C7BC43935F13FA8A4146042A1">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CASH AND CASH EQUIVALENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash in excess of that necessary for operating requirements is invested in short-term, highly liquid, income-producing investments. Investments with original maturities of three months or less are classified as cash and cash equivalents, which primarily consist of cash on deposit with several banks and money market funds. Cash and cash equivalents are stated at cost, which approximates market value.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-4727D3A47A452AA29888A8A414903E98-0-wk-Fact-7D08C7639A8244E4C3ADA8A41438087F">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;REVENUE RECOGNITION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Nature of Products and Services&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#x201c;PCS&#x201d; or &#x201c;maintenance&#x201d;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Identification of the contract, or contracts, with a customer&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Identification of the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Determination of the transaction price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Allocation of the transaction price to the performance obligations in the contract&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Recognition of revenue when, or as, we satisfy a performance obligation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether those services are highly interdependent or interrelated to the product&#x2019;s functionality. The transaction price is allocated to the distinct performance obligations on a relative standalone selling price (&#x201c;SSP&#x201d;) basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Software Arrangements:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Software Licenses and Royalties&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Many of our software arrangements involve &#x201c;off-the-shelf&#x201d; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#x2019;s purpose upon installation, and remaining services such as training are not considered highly interdependent or interrelated to the product's functionality.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Software license fees are billed in accordance with the contract terms. Typically, a majority of the fee is due when access to the software license is made available to the customer and the remainder of the fee due over a passage of time stipulated by the contract.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We recognize royalty revenue when the sale occurs under the terms of our third-party royalty arrangements. Currently, our third-party royalties are recognized on an estimated basis and are trued up when we receive notice of amounts we are entitled to receive. We typically receive notice of royalty revenues we are entitled to and billed on a quarterly basis in the quarter immediately following the royalty reporting period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Software Services&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As noted above, some of our software arrangements include services considered highly interdependent or highly interrelated or require significant customization to meet the customer's desired functionality. For these software arrangements, both the software licenses and related software services revenue are not distinct and are recognized over time using the progress-to-completion method. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts.  Contract fees are typically billed on a milestone basis as defined within contract terms.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met. When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Post-Contract Customer Support&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Our customers generally enter into PCS agreements when they purchase our software licenses. PCS includes telephone support, bug fixes, and rights to upgrades on a when-and-if available basis. PCS is considered distinct when purchased with our software licenses. Our PCS agreements are typically renewable annually. PCS is recognized over time on a straight-line basis over the period the PCS is provided. All significant costs and expenses associated with PCS are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Computer Hardware Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue allocable to computer hardware equipment is recognized at a point in time when control of the equipment is transferred to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Subscription-Based Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Subscription-based services consist primarily of revenues derived from SaaS arrangements, typically utilizing the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. Our subscription contracts are generally&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or longer in length, billed annually in advance, and non-cancelable.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#x2019;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements services ratably over the term of the arrangement, which range from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;one&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;ten years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, but are typically for a period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Electronic filing transaction fees primarily pertain to documents filed with the courts by attorneys and other third-parties via our e-filing services and retrieval of filed documents via our access services. For each document filed with a court, the filer generally pays a transaction fee and a court filing fee to us and we remit a portion of the transaction fee and the filing fee to the court. We record as revenue the transaction fee, while the portion of the transaction fee remitted to the courts is recorded as cost of revenues as we are acting as a principal in the arrangement. Court filing fees collected on behalf of the courts and remitted to the courts are recorded on a net basis and thus do not affect the statement of comprehensive income. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. In general, when we are the principal in a transaction based on the factors identified in ASC 606-10-55-36 through 55-40, we record the revenue and related costs on a gross basis. Otherwise, we net the cost of revenue associated with the service against the gross revenue (amount billed to the customer) and record the net amount as revenue.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For e-filing transaction fees and other transaction-based revenues, we have the right to charge the customer an amount that directly corresponds with the value to the customer of our performance to date. Therefore, we recognize revenue for these services over time based on the amount billable to the customer in accordance with the 'as invoiced' practical expedient in ASC 606-10-55-18. In some cases, we are paid on a fixed fee basis and recognize the revenue ratably over the contractual period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Costs of performing services under subscription-based arrangements are expensed as incurred, except for certain direct and incremental contract origination and set-up costs associated with SaaS arrangements. Such direct and incremental costs are capitalized and amortized ratably over the useful life.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Appraisal Services:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;one&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;-year periods and consist of various unique activities. Appraisal services require a significant level of integration and interdependency with various individual service components; therefore, the service components are not considered distinct. Appraisal services are recognized over time by measuring progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often executed over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent. Contract fees are typically billed on a milestone basis as defined within contract terms. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Significant Judgments:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Our contracts with customers often include multiple performance obligations to a customer. When a software arrangement (license or subscription) includes both software licenses and software services, judgment is required to determine whether the software license is considered distinct and accounted for separately, or not distinct and accounted for together with the software services and recognized over time. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt; &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For arrangements that involve significant production, modification or customization of the software, or where software services otherwise cannot be considered distinct, we recognize revenue as control is transferred to the customer over time using progress-to-completion methods. Depending on the contract, we measure progress-to-completion primarily using labor hours incurred, or value added. The progress-to-completion method generally results in the recognition of reasonably consistent profit margins over the life of a contract because we can provide reasonably dependable estimates of contract billings and contract costs. We use the level of profit margin that is most likely to occur on a contract. If the most likely profit margin cannot be precisely determined, the lowest probable level of profit margin in the range of estimates is used until the results can be estimated more precisely. These arrangements are often implemented over an extended time period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Typically, the structure of our arrangements does not give rise to variable consideration.&#160;However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Refer to Note 15 - "Disaggregation of Revenue" for further information, including the economic factors that affect the nature, amount, timing, and uncertainty of revenue and cash flows of our various revenue categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Contract Balances:&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Accounts receivable and allowance for doubtful accounts and sales adjustments&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Timing of revenue recognition may differ from the timing of invoicing to customers. We record an unbilled receivable when revenue is recognized prior to invoicing, or deferred revenue when revenue is recognized subsequent to invoicing. For multi-year agreements, we generally invoice customers annually at the beginning of each annual coverage period. We record an unbilled receivable related to revenue recognized for on-premises licenses as we have an unconditional right to invoice and receive payment in the future related to those licenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#x2019;s financial condition, failure to manage our customer&#x2019;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at beginning of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,396&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,636&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(569&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,031&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Collection of accounts previously written off&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(545&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(211&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at end of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,738&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The allowance for doubtful accounts and sales adjustments reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In connection with our appraisal services contracts and certain software services contracts, we may perform work prior to when the software and services are billable and/or payable pursuant to the contract. Unbilled revenue is not billable at the balance sheet date but is recoverable over the remaining life of the contract through billings made in accordance with contractual agreements. The termination clauses in most of our contracts provide for the payment for the value of products delivered or services performed in the event of early termination. We have historically recorded such unbilled receivables (costs and estimated profit in excess of billings) in connection with (1)&#160;property appraisal services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing normally occurs subsequently and may span another accounting period; (2)&#160;software services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing for the software element of the arrangement may be based upon the specific phase of the implementation; (3)&#160;software revenue for which we have recognized revenue at the point in time when the software is made available to the customer but the billing has not yet been submitted to the customer; (4)&#160;some of our contracts which provide for an amount to be withheld from a progress billing (generally between &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; retention) until final and satisfactory project completion is achieved; and (5)&#160;in a limited number of cases, extended payment terms, which may be granted to customers with whom we generally have a long-term relationship and favorable collection history.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, total current and long-term accounts receivable, net of allowance for doubtful accounts, was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$396.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$314.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. We have recorded unbilled receivables of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$134.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$104.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. Included in unbilled receivables are retention receivables of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$13.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, which become payable upon the completion of the contract or completion of our fieldwork and formal hearings. Unbilled receivables expected to be collected within one year have been included with accounts receivable, current portion in the accompanying consolidated balance sheets. Unbilled receivables and retention receivables expected to be collected past one year have been included with accounts receivable, long-term portion in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;30&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;90 days&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with simplified and predictable ways of purchasing our products and services, not to receive financing from our customers or to provide customers with financing. Examples include invoicing at the beginning of a subscription term with revenue recognized ratably over the contract period, and multi-year on-premises term licenses that are invoiced annually with revenue recognized upfront.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Deferred Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The majority of deferred revenue consists of deferred maintenance revenue that has been billed based on contractual terms in the underlying arrangement, with the remaining balance consisting of payments received in advance of revenue being earned under software licensing, subscription-based services, software and appraisal services and hardware installation. Refer to Note 16 - "Deferred Revenue and Performance Obligations" for further information, including deferred revenue by segment and changes in deferred revenue during the period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Deferred Commissions &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized on a straight-line basis over a period of benefit that we have determined to be&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;seven years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We utilized the "portfolio approach" practical expedient in ASC 606-10-10-4, which allows entities to apply the guidance to a portfolio of contracts with similar characteristics because the effects on the financial statements of this approach would not differ materially from applying the guidance to individual contracts. Using the 'portfolio approach', we determined the period of benefit by taking into consideration our customer contracts, our technology life-cycle and other factors. Sales commissions for renewal contracts are generally not paid in connection with the renewal of a contract.  In the small number of instances where a commission is paid on a renewal, it is not commensurate with the commission paid on the initial sale and is recognized over the term of renewal, which is generally &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of income. Refer to Note 17 - "Deferred Commissions" for further information.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Prepaid expenses and other current assets include direct and incremental costs such as commissions associated with arrangements for which revenue recognition has been deferred. Such costs are expensed at the time the related revenue is recognized.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember"
      id="d48746316e733-wk-Fact-872AAD2CFEE3DB7A18A8A8A41434007A">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2018Q3YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember"
      id="d48746316e744-wk-Fact-C5C9C5184451AC3C07D32BB31292CDF0">P10Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_SubscriptionAndCirculationSaaSArrangementsServicesMember_srt_RangeAxis_srt_MaximumMember"
      id="d48746316e752-wk-Fact-872AAD2CFEE3DB7A18A8A8A41434007A">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-5FC34DA37D9866408127A8A414901E7F-0-wk-Fact-4BF24F5EC78CB1FB5B0CA8A4146C3DBA">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at beginning of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,396&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Provisions for losses and sales adjustments - accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,636&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(569&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,031&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Collection of accounts previously written off&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(545&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(211&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at end of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,738&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,647&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48746316e985-wk-Fact-A06E6D939E805A87F371A8A414689316"
      unitRef="usd">4647000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48746316e1004-wk-Fact-EE7269D9BE3437CF747BA8A41468462B"
      unitRef="usd">5427000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="FI2016Q4"
      decimals="-3"
      id="d48746316e1023-wk-Fact-80F312B4443C620CD707A8A4146C0C0D"
      unitRef="usd">3396000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48746316e1039-wk-Fact-E69256B485146BDF1DBAA8A41434AAA4"
      unitRef="usd">1636000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48746316e1058-wk-Fact-1F2986CB3DABB65208A4A8A4145C5DD1"
      unitRef="usd">-569000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48746316e1078-wk-Fact-C27CFDB272548DED7536A8A41434102F"
      unitRef="usd">2031000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48746316e1099-wk-Fact-2FFD34A42D15A1267C0AA8A4146823CB"
      unitRef="usd">545000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48746316e1119-wk-Fact-6C6984B47C0D4C2B29C6A8A4146C9522"
      unitRef="usd">211000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48746316e1139-wk-Fact-6CDDB12CBF7F1ECD645FA8A4146C1001"
      unitRef="usd">0</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48746316e1165-wk-Fact-2B6FC9FC25D7981F7CF3A8A4143C686D"
      unitRef="usd">5738000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48746316e1184-wk-Fact-609B91DE358F57CF46E2A8A41448FF77"
      unitRef="usd">4647000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48746316e1203-wk-Fact-EE7269D9BE3437CF747BA8A41468462B"
      unitRef="usd">5427000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember"
      decimals="INF"
      id="d48746316e1219-wk-Fact-AEB5B94B1B53915E123441A575FE44F3"
      unitRef="number">0.05</tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling>
    <tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      decimals="INF"
      id="d48746316e1223-wk-Fact-541F3C9F765CBDF93C4241A5762C9314"
      unitRef="number">0.20</tyl:RevenueFromContractWithCustomerPercentageWithheldFromProgressBilling>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48746316e1238-wk-Fact-54FAE2B9F09CEE170112A8A41438E45A"
      unitRef="usd">396500000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2018Q4"
      decimals="-5"
      id="d48746316e1242-wk-Fact-0EF75DD1C6D926279BD3A8A414687DE6"
      unitRef="usd">314900000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember"
      decimals="-5"
      id="d48746316e1246-wk-Fact-1ACEC2E8F891835BF01AA8A414609345"
      unitRef="usd">134000000.0</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember"
      decimals="-5"
      id="d48746316e1251-wk-Fact-74967F51F250828A7228A8A414680401"
      unitRef="usd">104200000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2019Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember"
      decimals="-5"
      id="d48746316e1263-wk-Fact-E946A2E3946CF9F927EBA8A41468A864"
      unitRef="usd">13100000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="FI2018Q4_us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_tyl_RetentionReceivableMember_us-gaap_AccountsNotesLoansAndFinancingReceivablesByBillingStatusTypeAxis_us-gaap_UnbilledRevenuesMember"
      decimals="-5"
      id="d48746316e1267-wk-Fact-6223794A27793746AD2FA8A41434DD3E"
      unitRef="usd">12200000</us-gaap:AccountsReceivableNet>
    <tyl:RevenueFromContractWithCustomerPaymentTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48746316e1287-wk-Fact-2539FB9D87143667DE842BE46CD37003">P90D</tyl:RevenueFromContractWithCustomerPaymentTerm>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48746316e1308-wk-Fact-C5F331BA6EAFACF0656DA8A4143CDBBB">P7Y</tyl:SalesCommissionsAmortizationPeriod>
    <tyl:SalesCommissionRenewalPeriod
      contextRef="FD2019Q4YTD"
      id="d48746316e1312-wk-Fact-339519329525D2F824C5300231EBCFBE">P1Y</tyl:SalesCommissionRenewalPeriod>
    <us-gaap:UseOfEstimates
      contextRef="FD2019Q4YTD"
      id="TextSelection-2E6E2589F51D44B8DEE9A8A414900728-0-wk-Fact-CBF509B36C494BF62A97A8A41468D385">USE OF ESTIMATES&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The preparation of our financial statements in conformity with accounting principles generally accepted in the United States (&#x201c;GAAP&#x201d;) requires us 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. Significant items subject to such estimates and assumptions include revenue recognition, determining the nature and timing of satisfaction of performance obligations, determining the SSP of performance obligations, variable consideration, and other obligations such as returns and refunds; loss contingencies; the estimated useful life of deferred commissions; the carrying amount and estimated useful lives of intangible assets; the carrying amount of operating lease right-of-use assets and operating lease liabilities; determining share-based compensation expense; the valuation allowance for receivables; and determining the potential outcome of future tax consequences of events that have been recognized on our consolidated financial statements or tax returns. Actual results could differ from estimates.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B5F915606A22885A66F2A8A4149063F3-0-wk-Fact-B5DAD4026F912C0D1240A8A41438AA0B">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;PROPERTY AND EQUIPMENT, NET&lt;/span&gt;&lt;/div&gt;Property, equipment and purchased software are recorded at original cost and increased by the cost of any significant improvements after purchase. We expense maintenance and repairs when incurred. Depreciation and amortization is calculated using the straight-line method over the shorter of the asset&#x2019;s estimated useful life or the term of the lease in the case of leasehold improvements. For income tax purposes, we use accelerated depreciation methods as allowed by tax laws.</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-6D9A5EDF377BBDD5365AA8A41490A12B-0-wk-Fact-CEB77002BE22E9071639A8A4146CD9F7">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RESEARCH AND DEVELOPMENT COSTS&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We expensed research and development expense of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$81.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$63.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$47.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;.&#160;&#160;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48746316e1364-wk-Fact-4DF065FEC4B8AE526DD7A8A41460252C"
      unitRef="usd">81300000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48746316e1372-wk-Fact-516F3BA0E1B5C0309CB2A8A414601940"
      unitRef="usd">63300000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48746316e1380-wk-Fact-B9626B67C5EA3F69B82DA8A414602B5F"
      unitRef="usd">47300000</us-gaap:ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-75BA9EA208E0BBF83F1CA8A4149057D6-0-wk-Fact-8A87E376911F2E5AA447A8A414604999">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;INCOME TAXES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income taxes are accounted for under the asset and liability method. Deferred taxes arise because of different treatment between financial statement accounting and tax accounting, known as &#x201c;temporary differences". We record the tax effect of these temporary differences as &#x201c;deferred tax assets&#x201d; (generally items that can be used as a tax deduction or credit in the future periods) and &#x201c;deferred tax liabilities&#x201d; (generally items that we received a tax deduction for, which have not yet been recorded in the income statement). The deferred tax assets and liabilities are measured using enacted tax rules and laws that are expected to be in effect when the temporary differences are expected to be recovered or settled. A valuation allowance would be established to reduce deferred tax assets if it is more likely than not that a deferred tax asset will not be "realized."&#160;On December 22, 2017, the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;(the &#x201c;Tax Act&#x201d;) was enacted into law. The Tax Act amends the Internal Revenue Code to reduce tax rates and modify policies, credits and deductions for individuals and businesses. For businesses, the Tax Act reduces the corporate U.S. federal tax rate from a maximum of&#160;35%&#160;to a flat&#160;21% rate and transitions from a worldwide tax system to a territorial tax system. Under ASC 740 Income Taxes, the effects of changes in tax rates and laws are recognized in the period in which the new legislation is enacted. &lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-4950510359CAE676092AA8A414903DF5-0-wk-Fact-22F2BA6B299F99D6F75CA8A41464D32A">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;SHARE-BASED COMPENSATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have a share-based award plan that provides for the grant of stock options, restricted stock units, and performance share units to key employees, directors and non-employee consultants. Stock options generally vest after &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;six years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant and have a contractual term of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. Restricted stock unit grants generally vest ratably over&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Stock Compensation&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. See Note 9 &#x2013; &#x201c;Share-Based Compensation&#x201d; for further information. &lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48746316e1424-wk-Fact-CD21D9EC9BC5DB45E6A3A8A41464D3E6">P6Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48746316e1428-wk-Fact-24DC000EE1A9EE82D0FCA8A414688F4E">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="d48746316e1436-wk-Fact-9536FC73F3E1B343B3C2A8A41434A668">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-605508DB6588EE97F832A8A414904ABF-0-wk-Fact-9A2DF8803B43B95A9265A8A41438FD39">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill represents the excess of the purchase price over the fair value of net assets acquired, including identifiable intangible assets, in connection with our business combinations. Upon acquisition, goodwill is assigned to the reporting unit that is expected to benefit from the synergies of the business combination, which is the reporting unit to which the related acquired technology is assigned. A reporting unit is the operating segment, or a business unit one level below that operating segment, for which discrete financial information is prepared and regularly reviewed by executive management. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. If it is determined through the evaluation of events or circumstances that the carrying value may not be recoverable, we perform a comparison of the estimated fair value of the reporting unit to which the goodwill has been assigned to the sum of the carrying value of the assets and liabilities of that unit. If the sum of the carrying value of the assets and liabilities of a reporting unit exceeds the estimated fair value of that reporting unit, the carrying value of the reporting unit's goodwill is reduced to its fair value through an adjustment to the goodwill balance, resulting in an impairment charge. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, did &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;t result in an impairment charge. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; There have been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; impairments of intangible assets in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Other Intangible Assets&lt;/span&gt;&lt;/div&gt;We make judgments about the recoverability of purchased intangible assets other than goodwill whenever events or changes in circumstances indicate that an impairment may exist. Customer base and acquired software each comprise approximately half of our purchased intangible assets other than goodwill. We review our customer turnover each year for indications of impairment. Our customer turnover has historically been very low.&#160;If indications of impairment are determined to exist, we measure the recoverability of assets by a comparison of the carrying amount of the asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets.</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="FD2019Q2QTD"
      decimals="INF"
      id="d48746316e1469-wk-Fact-7ED2376DB45B07193133416B1FEA1FA8"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48746316e1476-wk-Fact-00DD992E521366D6FF72A8A41464FA1C"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48746316e1491-wk-Fact-00DD992E521366D6FF72A8A41464FA1C"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-8F4C104D7F7B607C4C05A8A41490B194-0-wk-Fact-8AFFB825E092C555DE7FA8A414647D8B">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;IMPAIRMENT OF LONG-LIVED ASSETS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We periodically evaluate whether current facts or circumstances indicate that the carrying value of our property and equipment or other long-lived assets to be held and used may not be recoverable. If such circumstances are determined to exist, we measure the recoverability of assets to be held and used by a comparison of the carrying amount of the asset or appropriate grouping of assets and the estimated undiscounted future cash flows expected to be generated by the assets. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated. The assets and liabilities of a disposed group or classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There have been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; significant impairments of long-lived assets in any of the periods presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48746316e1505-wk-Fact-5817AFAAD1C2D8BEE4DBA8A4146872D7"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-9630A375511D06B9F6B4A8A414904E9D-0-wk-Fact-AD129EE99F927348903AA8A4146040C8">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;COSTS OF COMPUTER SOFTWARE&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We capitalize software development costs upon the establishment of technological feasibility and prior to the availability of the product for general release to customers. Software development costs primarily consist of personnel costs and rent for related office space. We capitalized approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of software development costs in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We begin to amortize capitalized costs when a product is available for general release to customers. Amortization expense is determined on a product-by-product basis at a rate not less than straight-line basis over the product&#x2019;s remaining estimated economic life of, generally, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;five&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. Amortization of software development costs was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$296,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and is included in cost of software license revenue in the accompanying consolidated statements of comprehensive income. We have not capitalized any internal use software development costs in any of the periods presented.&lt;/span&gt;&lt;/div&gt;</us-gaap:SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy>
    <tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48746316e1524-wk-Fact-C1B1CFF7C19270DE626211BCB7B16780"
      unitRef="usd">4800000</tyl:CapitalizedPostAcquisitionSoftwareDevelopmentCosts>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48746316e1536-wk-Fact-929437769929DA2EDDFB11BDD3202E15"
      unitRef="usd">296000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-42C36DDE72B6CF00AA4B118FE0C4C080-0-wk-Fact-7F28BC62E3848D599385118FEEADBD23">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CONTINGENT PURCHASE CONSIDERATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Contingent future cash payments related to acquisitions are recognized at fair value as of the acquisition date and included in the determination of the acquisition date purchase price. Subsequent changes in the fair value of the contingent future cash payments are recognized in earnings in the period that the change occurs.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-14844CD2F8A273B7FDB9A8A414903B06-0-wk-Fact-3EFA57B20714D5DA5BDDA8A41434AE50">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;FAIR VALUE OF FINANCIAL INSTRUMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash and cash equivalents, accounts receivables, accounts payables, short-term obligations and certain other assets at cost approximate fair value because of the short maturity of these instruments. The fair value of our revolving line of credit would approximate book value as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, because our interest rates reset approximately every 30 days or less. See Note 6 &#x2013; &#x201c;Revolving Line of Credit&#x201d; for further discussion.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we have &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$81.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020 through 2023&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;We intend to hold these bonds to maturity and have classified them as such.&#160;We believe cost approximates fair value.&#160;The fair values of these securities are considered Level II as they are based on inputs from quoted prices in markets that are not active or from other observable market data. These investments are included in short-term investments and non-current investments and other assets.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we have &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$15.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; invested in convertible preferred stock representing a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings. The investment in convertible preferred stock is accounted under the cost method because we do not have the ability to exercise significant influence over the investee and the securities do not have readily determinable fair values. Our investment is carried at cost less any impairment write-downs. Our cost method investments are assessed annually for impairment. We do not reassess the fair value of cost method investments if there are no identified events or changes in circumstances that may have a significant adverse effect on the fair value of the investments. There has been &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; impairment of our cost method investment for the periods presented. This investment is included in non-current investments and other assets in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:PaymentsToAcquireHeldToMaturitySecurities
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48746316e1579-wk-Fact-4A4FFDA1CF98C55C8439A8A41464DBBF"
      unitRef="usd">81600000</us-gaap:PaymentsToAcquireHeldToMaturitySecurities>
    <us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue
      contextRef="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember"
      decimals="-5"
      id="d48746316e1594-wk-Fact-F3A3A292FE9777B3B8E3A8A4146002A2"
      unitRef="usd">15000000.0</us-gaap:EquitySecuritiesFvNiAndWithoutReadilyDeterminableFairValue>
    <tyl:CostMethodInvestmentOwnershipPercentage
      contextRef="FI2019Q4_dei_LegalEntityAxis_tyl_RecordHoldingsPtyLimitedMember_us-gaap_StatementClassOfStockAxis_us-gaap_ConvertiblePreferredStockMember"
      decimals="2"
      id="d48746316e1598-wk-Fact-9907D684A616425A27F9A8A414685D96"
      unitRef="number">0.20</tyl:CostMethodInvestmentOwnershipPercentage>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48746316e1602-wk-Fact-93C0E4C7218610905615A8A4146436A3"
      unitRef="usd">0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueImpairmentLossAnnualAmount>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="FD2019Q4YTD"
      id="TextSelection-21ADB7788A6796AA873EA8A414908497-0-wk-Fact-A04FAE90FE8E44C50853A8A41464E958">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;CONCENTRATIONS OF CREDIT RISK &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents, accounts receivable from trade customers, and investments in marketable securities. Our cash and cash equivalents primarily consist of operating account balances and money market funds, which are maintained at several major domestic financial institutions and the balances often exceed insured amounts. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had cash and cash equivalents of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$232.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We perform periodic evaluations of the credit standing of these financial institutions.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Concentrations of credit risk with respect to receivables are limited due to the size and geographical diversity of our customer base. Historically, our credit losses have not been significant. As a result, we do not believe we have any significant concentrations of credit risk as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#x2019;s financial condition, failure to manage our customer&#x2019;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48746316e1624-wk-Fact-BC94A210F603B59DBF75A8A41468FFE7"
      unitRef="usd">232700000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-69810B0DA45FDDBE5AEC11911DBDCEEB-0-wk-Fact-7A7F7BF30330DD5E690211912E2E4F29">&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;LEASES&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We determine if an arrangement is a lease at inception. Operating leases are included in operating lease right-of-use (&#x201c;ROU&#x201d;) assets, and operating lease liabilities, current and long-term, on our consolidated balance sheets. We currently do not have any finance lease arrangements. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease ROU assets and operating lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date of the lease in determining the present value of future payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives and initial direct costs incurred. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term. Leases with an initial term of 12 months or less are not recorded on the balance sheet; we recognize lease expense for these leases on a straight-line basis over the lease term. We have lease agreements with lease and non-lease components, which are generally accounted for as a single lease component. &lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:GuaranteesIndemnificationsAndWarrantiesPolicies
      contextRef="FD2019Q4YTD"
      id="TextSelection-062F981ED2AA8198F521A8A414902508-0-wk-Fact-86317F5FE6B2EFCF7E61A8A414380C4C">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;INDEMNIFICATION&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Most of our software license agreements indemnify our customers in the event that the software sold infringes upon the intellectual property rights of a third-party. These agreements typically provide that in such event we will either modify or replace the software so that it becomes non-infringing or procure for the customer the right to use the software. We have recorded no liability associated with these indemnifications, as we are not aware of any pending or threatened infringement actions that are possible losses. We believe the estimated fair value of these intellectual property indemnification clauses is minimal.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have also agreed to indemnify our officers and board members if they are named or threatened to be named as a party to any proceeding by reason of the fact that they acted in such capacity. We maintain directors&#x2019; and officers&#x2019; liability insurance coverage to protect against any such losses. We have recorded no liability associated with these indemnifications. Because of our insurance coverage, we believe the estimated fair value of these indemnification agreements is minimal.&lt;/span&gt;&lt;/div&gt;</us-gaap:GuaranteesIndemnificationsAndWarrantiesPolicies>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="FD2019Q4YTD"
      id="TextSelection-FD04F09885F5B3D1B35EA8A414903758-0-wk-Fact-85C78A72E19A3B18B0C5A8A414646B9D">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RECLASSIFICATIONS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Certain amounts for previous years have been reclassified to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-781E37F17A4460A3236E119262D190C5-0-wk-Fact-0252FC8DC1F359EBA104119270C5C345">&lt;div style="line-height:120%;padding-bottom:16px;padding-top:16px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Leases.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; We adopted ASU No. 2016-02, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Leases&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; ("Topic 842") using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of the lease arrangement. The impact of adoption is reflected in the financial information herein. For additional details, see Note 11 to our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of ROU assets and operating lease liabilities, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and continue to have none as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;NEW ACCOUNTING PRONOUNCEMENTS&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2016, the FASB issued ASU 2016-13,&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Financial Instruments -&#160;Credit&#160;Losses,&lt;/span&gt;&#160;(&#x201c;ASU 2016-13&#x201d;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#x2019;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020. We have evaluated the impact of this standard on our consolidated financial statements, including accounting policies, processes and systems. Based on the nature of the Company's customer base and historical nature of losses, we do not expect the impact to be material upon adoption.</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-19B0C55F8C2323355D5811691F515495-0-wk-Fact-9D54F89EBAEF837215C811692C99D909">&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Amounts recognized at January 1, 2019, for operating leases were as follow (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:589px;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:488px;"/&gt;&lt;td style="width:5px;"/&gt;&lt;td style="width:9px;"/&gt;&lt;td style="width:83px;"/&gt;&lt;td style="width:3px;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,633&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,344&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease liabilities, long-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(12,405&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Retained earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,116&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="d48746316e1778-wk-Fact-E6AF4CCFDABB4E4A1127117195D84293"
      unitRef="usd">15633000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="d48746316e1798-wk-Fact-F5A7F2176A40C8F6791E1171A8892C4E"
      unitRef="usd">4344000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="d48746316e1824-wk-Fact-419C57E544B1377533A41171B730F1EC"
      unitRef="usd">12405000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="I2019Q1Jan01_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="-3"
      id="d48746316e1855-wk-Fact-4E7A1211648EF18E7C8F1171C6AFE5C7"
      unitRef="usd">1116000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-10241DD29D4C64E68C08A8A414905174-0-wk-Fact-662E712556C25369E88BA8A4141C67EB">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;ACQUISITIONS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On October&#160;30, 2019, we acquired certain assets of Courthouse Technologies, Ltd ("CHT"), an industry-leading provider of jury management systems that offers a fully integrated, end-to-end SaaS solution to manage all facets of juror management, from source list generation to juror processing and payment. The total purchase price was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$20.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of which &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$19.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was paid in cash and approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was accrued for working capital and indemnity holdbacks, subject to certain post-closing adjustments.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On February 28, 2019, we acquired all of the capital stock of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;MP Holdings Parent, Inc. dba MicroPact&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; ("MicroPact"), a leading provider of commercial off-the-shelf ("COTS") solutions, including entellitrak&#xae;, a low-code application development platform for case management and business process management used extensively in the public sector. The total purchase price, net of cash acquired of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$202.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; consisting of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$198.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;paid in cash and accrued consideration of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; contingent upon the achievement of certain financial performance objectives.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have performed a valuation analysis of the fair market value of MicroPact&#x2019;s assets and liabilities. The following table summarizes the final allocation of the purchase price as of the acquisition date:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:50.74074074074074%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:68%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:29%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;(In thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,983&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,535&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,979&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other noncurrent assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,417&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Identifiable intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;136,143&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accounts payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(602&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other noncurrent liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,510&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred tax liabilities, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,125&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total consideration&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;204,168&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In connection with this transaction, we acquired total tangible assets of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$31.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and assumed liabilities of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$27.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We recorded goodwill of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$76.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, none of which is expected to be deductible for tax purposes, and other identifiable intangible assets of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$136.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. The &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$136.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of intangible assets are attributable to customer relationships, acquired software, trade name and favorable fair value of an operating lease and will be amortized over a weighted average period of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11 years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We recorded deferred tax liabilities of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$13.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; related to estimated fair value allocations. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The acquisition of MicroPact augments our product solutions, positions us in new practice areas such as health and human services, and presents opportunities to expand our business across new and complementary markets. We intend to expand our total addressable market through MicroPact's strong presence in the federal market. Therefore, the goodwill of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$76.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; arising from this acquisition is primarily attributed to our ability to generate increased revenues, earnings and cash flow by expanding our addressable market and client base. In &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we recorded adjustments to the preliminary opening balance sheet attributed to changes in accounts receivable, deferred revenue, customer relationships, accrued expenses, working capital holdback and related deferred taxes resulting in a net decrease to goodwill of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:21px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following unaudited pro forma consolidated operating results information has been prepared as if the MicroPact acquisition had occurred at January 1, 2018, after giving effect to certain adjustments, including amortization of intangibles, interest, transaction costs and tax effects.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.51851851851852%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;"/&gt;&lt;td style="width:2%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:24%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:2%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:24%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Twelve Months Ended December 31,(unaudited)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,098,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,009,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,998&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Basic earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.78&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.82&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.65&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.66&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The pro forma information above does not include acquisitions that are not considered material to our results of operations. The pro forma information does not purport to represent what our results of operations actually would have been had such transaction occurred on the date specified or to project our results of operations for any future period.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On February 1, 2019, we acquired all the assets of Civic, LLC ("MyCivic"), a company that provides software solutions to connect communities. The total purchase price was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the purchase price allocations for MicroPact and MyCivic are complete. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the purchase price allocation for CHT is not yet complete; therefore, the preliminary valuation estimates of fair value assumed at the acquisition date for intangible assets, receivables and deferred revenue and related deferred taxes are subject to change as valuations are finalized. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The operating results of all 2019 acquisitions are included with the operating results of the Enterprise Software segment since their date of acquisition. Revenues from MicroPact included in Tyler's results of operations totaled approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$63.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and the net loss was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$98,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; from the date of acquisition through &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. The impact of the MyCivic and CHT &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;acquisitions, individually and in the aggregate, on our operating results, assets and liabilities is not material. In &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we incurred fees of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for financial advisory, legal, accounting, due diligence, valuation and other various services necessary to complete these acquisitions. These fees were expensed in 2019 and are included in selling, general and administrative expenses on the consolidated statement of comprehensive income.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Our balance sheet as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, reflects the allocation of the purchase price to the assets acquired based on their fair value at the date of each acquisition. The fair value of the assets and liabilities acquired are based on valuations using Level III, unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;At&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the maximum aggregate amount of remaining contingent cash payments associated with our acquisitions is&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;and are payable in fiscal year &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;color:#000000;"&gt;2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On December 7, 2018, we acquired certain assets and intellectual property of&#160;SceneDoc, Inc., a company that provides mobile-first, SaaS field reporting for law enforcement agencies. The total purchase price was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On October 1, 2018, we acquired all of the equity interests of&#160;TradeMaster, Inc. dba MobileEyes, a company that develops SaaS software to improve public safety by supporting fire prevention and suppression, emergency response, and structural safety. The total purchase price was approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On August 31, 2018, we acquired all of the assets of CaseloadPRO, L. P., a company that provides a fully featured SaaS probation case management system. The purchase price of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$9.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was paid in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On April 30, 2018, we acquired all of the capital stock of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Socrata, Inc.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;("Socrata"), a company that provides open data and data-as-a-service solutions including cloud-based data integration, visualization, analysis, and reporting solutions for state and local government agencies. The purchase price, net of cash acquired of  &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$147.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; paid in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On April 30, 2018, we acquired all of the equity interests of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Sage Data Security, LLC&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, a cybersecurity company offering a suite of services that supports an entire cybersecurity lifecycle, including program development, education and training, technical testing, advisory services, and digital forensics. The total purchase price was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$11.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; paid in cash. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;November&#160;29, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we acquired audio and digital two-way radio communications technology and related assets from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Radio 10-33, LLC&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. The total purchase price was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, all of which was paid in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;August&#160;2, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we acquired substantially all of the assets and assumed certain liabilities of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Digital Health Department, Inc.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, a company that provides environmental health software, offering a SaaS solution for public health compliance and inspections processes. The total purchase price, net of debt assumed, was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, all of which was paid in cash. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;May&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we acquired all of the capital stock of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Modria.com, Inc.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, a company that specializes in online dispute resolution for government and commercial entities. The total purchase price, net of debt assumed, was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, all of which was paid in cash.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The operating results of these acquisition are included in our results of operations of the Enterprise Software segment from their respective dates of acquisition.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember"
      decimals="-5"
      id="d48747185e587-wk-Fact-9C7DC8C39DB4B746A9AC11EE1E0EC0A3"
      unitRef="usd">20500000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2019Q3SD_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember"
      decimals="-5"
      id="d48747185e591-wk-Fact-3D0EEF0E5DA793F71CE111EE94DEFC96"
      unitRef="usd">19100000</us-gaap:PaymentsToAcquireBusinessesGross>
    <tyl:AccruedAcquisitionPurchasePrice
      contextRef="I2019Q4Oct30_us-gaap_BusinessAcquisitionAxis_tyl_CourthouseTechnologiesLtdMember"
      decimals="-5"
      id="d48747185e595-wk-Fact-543E40C28C0C1A3DD0AB11EEB7ACB52D"
      unitRef="usd">1400000</tyl:AccruedAcquisitionPurchasePrice>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e606-wk-Fact-E0D30E88A9AF1C9BE5B811E17BB31E0D"
      unitRef="usd">2000000.0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e610-wk-Fact-428B7EB8B14C4375B3AB11E1A4B349F0"
      unitRef="usd">202200000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e614-wk-Fact-BA147B6A0D656ECC5D3C11E1D66A26ED"
      unitRef="usd">198200000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e618-wk-Fact-01CDD932D9A5C1A07F2611E215A09EA1"
      unitRef="usd">6000000.0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-ECCB017335DAC76BCBC511CDB5755263-0-wk-Fact-DFEA24A7097E642FA55C11CDC45F2CC2">&lt;div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We have performed a valuation analysis of the fair market value of MicroPact&#x2019;s assets and liabilities. The following table summarizes the final allocation of the purchase price as of the acquisition date:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:50.74074074074074%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:68%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:29%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;(In thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,983&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accounts receivable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,535&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,979&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other noncurrent assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,417&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Identifiable intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;136,143&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accounts payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(602&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other noncurrent liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,510&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred tax liabilities, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,125&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total consideration&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;204,168&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e683-wk-Fact-431110E47A4EF5043E1311D298ADD8EB"
      unitRef="usd">1983000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e703-wk-Fact-4714AD405BF3AD1C95E411D2AB9D8A53"
      unitRef="usd">10535000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e728-wk-Fact-4CE9C2CF0287C4D2971811D2C393D380"
      unitRef="usd">8979000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e753-wk-Fact-5F55336FFD131DA9058111D2DB7802A5"
      unitRef="usd">10417000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e778-wk-Fact-CFBFCB9296E7EB5C90EE11D3074C7241"
      unitRef="usd">136143000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e803-wk-Fact-3C767E3B4DC757428E4611D3253D1781"
      unitRef="usd">76319000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e828-wk-Fact-8A4377028DE745271CD111D3BEF05298"
      unitRef="usd">602000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e854-wk-Fact-213E94CF34E0900E2FFE11D3C0FBF5DE"
      unitRef="usd">4092000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e880-wk-Fact-5ABD5DF3643C8307459311D3C32A1950"
      unitRef="usd">8879000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e906-wk-Fact-6BA13FA6898609A0435811D3C59169B6"
      unitRef="usd">13510000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e933-wk-Fact-BBF59B09E600A132B98D11D3C828F809"
      unitRef="usd">13125000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e964-wk-Fact-410E6BD07383A17C94E111D3C98AECA6"
      unitRef="usd">204168000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <tyl:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e975-wk-Fact-616035B07DF381744CD611F5289F2C41"
      unitRef="usd">31900000</tyl:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedTangibleAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e979-wk-Fact-7490C39AEC86EA7D6C0B11F57D28B833"
      unitRef="usd">27100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities>
    <us-gaap:Goodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e983-wk-Fact-736D236F525540B12B3511F64540131D"
      unitRef="usd">76300000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e987-wk-Fact-909BA00559447DA177212D35ABA4E507"
      unitRef="usd">136100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e991-wk-Fact-909BA00559447DA177212D35ABA4E507"
      unitRef="usd">136100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      id="d48747185e996-wk-Fact-1DBA6EACBA023B6E7FD911F5BC71B04D">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e1000-wk-Fact-E92E9CCAF54AAC857F5111F60445B8F4"
      unitRef="usd">13100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:Goodwill
      contextRef="I2019Q1Feb28_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e1007-wk-Fact-736D236F525540B12B3511F64540131D"
      unitRef="usd">76300000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e1015-wk-Fact-144CBAC35825CC8DED9911F688F2FC92"
      unitRef="usd">5700000</us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-00540B90A840F6385B6E11CE076402AA-0-wk-Fact-0A79D04839A75AFCDBBD11CE189867E7">&lt;div style="line-height:120%;padding-bottom:21px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following unaudited pro forma consolidated operating results information has been prepared as if the MicroPact acquisition had occurred at January 1, 2018, after giving effect to certain adjustments, including amortization of intangibles, interest, transaction costs and tax effects.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:48.51851851851852%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;"/&gt;&lt;td style="width:2%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:24%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:2%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:24%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Twelve Months Ended December 31,(unaudited)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,098,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,009,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,998&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Basic earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.78&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.82&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.65&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.66&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e1149-wk-Fact-B556F09364F6064E99E711DB53A063B9"
      unitRef="usd">1098226000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e1168-wk-Fact-A10FD878E3CCC2CDF75C11DB53A580AE"
      unitRef="usd">1009427000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e1188-wk-Fact-EBA702C287D53EB365CA11DB65DCD0FF"
      unitRef="usd">146200000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e1207-wk-Fact-4FE47B2DD777E838DB8D11DB65DFB312"
      unitRef="usd">146998000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="2"
      id="d48747185e1237-wk-Fact-7E2CD92926F4B4C7BB8111DB82B3DE33"
      unitRef="usdPerShare">3.78</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="2"
      id="d48747185e1256-wk-Fact-39C911FF3E42C8682E1211DB8281BCBA"
      unitRef="usdPerShare">3.82</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="2"
      id="d48747185e1281-wk-Fact-5883A9DC6DE96642A33511DB9A1CC995"
      unitRef="usdPerShare">3.65</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="2"
      id="d48747185e1300-wk-Fact-8129C72A162C73959CA011DB99D4B30D"
      unitRef="usdPerShare">3.66</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2019Q1Feb1_us-gaap_BusinessAcquisitionAxis_tyl_CivicLLCMember"
      decimals="-5"
      id="d48747185e1315-wk-Fact-EC6190F76654D3D9113011FCBBC1E41B"
      unitRef="usd">3700000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-5"
      id="d48747185e1333-wk-Fact-910E9ACF6FC8BBEBCD36A8A41424E69D"
      unitRef="usd">63000000.0</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48747185e1337-wk-Fact-FD41CBA10ED1DF21BD19A8A41428E1D6"
      unitRef="usd">-98000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MicroPactAndMyCivicMember"
      decimals="-5"
      id="d48747185e1352-wk-Fact-C8BD4D46C0C244B2A8C111FE5CB75B87"
      unitRef="usd">1100000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48747185e1370-wk-Fact-B97CA2D34E9DE393C78641A0878E5C33"
      unitRef="usd">6000000.0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="D2018Q4Dec07_us-gaap_BusinessAcquisitionAxis_tyl_SceneDoc.Inc.Member"
      decimals="-5"
      id="d48747185e1384-wk-Fact-64F78C19E52AEBBD28F8A8A4142463EF"
      unitRef="usd">6200000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="D2018Q4oct1_us-gaap_BusinessAcquisitionAxis_tyl_TradeMasterInc.Member"
      decimals="-5"
      id="d48747185e1391-wk-Fact-F9402DC53C8D88C24053A8A414282990"
      unitRef="usd">5300000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2018Q3aug31_us-gaap_BusinessAcquisitionAxis_tyl_CaseloadPROLPMember"
      decimals="-5"
      id="d48747185e1398-wk-Fact-81DE8AF625E9142BA01BA8A414280D1B"
      unitRef="usd">9300000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="I2018Q2april30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member"
      decimals="-5"
      id="d48747185e1409-wk-Fact-52D0FF094BF7490A79D912020D2F5BD0"
      unitRef="usd">1700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member"
      decimals="-5"
      id="d48747185e1413-wk-Fact-72D44EB2BB6140F6A824A8A414283554"
      unitRef="usd">147600000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="D2018Q2Apr30_us-gaap_BusinessAcquisitionAxis_tyl_SageDataSecurityLLCMember"
      decimals="-5"
      id="d48747185e1434-wk-Fact-D36DD758345DE6EE1E89A8A41424E3EB"
      unitRef="usd">11600000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2017Q4NOV_us-gaap_BusinessAcquisitionAxis_tyl_Radio1033LLCMember"
      decimals="-5"
      id="d48747185e1455-wk-Fact-13C55DB09F4690311AFEA8A4142479D6"
      unitRef="usd">1400000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2017Q3AUG_us-gaap_BusinessAcquisitionAxis_tyl_DigitalHealthDepartmentInc.Member"
      decimals="-5"
      id="d48747185e1470-wk-Fact-DDBBC18AA109796F5283A8A4142C80D4"
      unitRef="usd">3900000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2017Q2MAY_us-gaap_BusinessAcquisitionAxis_tyl_Modria.comMember"
      decimals="-5"
      id="d48747185e1485-wk-Fact-797866C0D6C58EE7D7B5A8A414283630"
      unitRef="usd">6100000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2A67566BF471C3A023A9A8A41490F655-0-wk-Fact-009A21D7E30053136BA0A8A414789DC4">&lt;span style="font-family:inherit;font-size:10pt;"&gt;PROPERTY AND EQUIPMENT, NET &#160;&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment, net consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="11"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;Useful&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;Lives&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;(years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Land&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,653&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,958&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Building and leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;5-39&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;137,448&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;122,241&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Computer equipment and purchased software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;99,435&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;84,649&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28,506&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,238&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Transportation equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;438&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;284,444&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;244,524&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated depreciation and amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(112,583&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(89,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Property and equipment, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;171,861&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,177&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Depreciation expense was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$23.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$17.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We paid &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$20.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for real estate and the expansion of existing buildings in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we purchased an office building in Latham, New York for approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and paid &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for improvements to that building. We also paid &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$19.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for construction to expand our office building in Yarmouth, Maine.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-A5A5483391D1D735AECDA8A4149006D4-0-wk-Fact-5925847BB37401E006F7A8A414743F40">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment, net consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="11"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;Useful&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;Lives&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times New Roman;font-size:8pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;(years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Land&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,653&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,958&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Building and leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;5-39&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;137,448&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;122,241&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Computer equipment and purchased software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;3-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;99,435&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;84,649&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28,506&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,238&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Transportation equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;438&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;284,444&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;244,524&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated depreciation and amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(112,583&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(89,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Property and equipment, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;171,861&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,177&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember"
      decimals="-3"
      id="d48747837e696-wk-Fact-DFA4951C72633C78122AA8A413EE83D6"
      unitRef="usd">18653000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember"
      decimals="-3"
      id="d48747837e715-wk-Fact-B39EF09D7B9B20D8E4C1A8A413F23DDA"
      unitRef="usd">9958000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember"
      decimals="-3"
      id="d48747837e744-wk-Fact-6A66651F12337CB87102A8A413EED6E8"
      unitRef="usd">137448000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_BuildingAndLeaseholdImprovementsMember"
      decimals="-3"
      id="d48747837e763-wk-Fact-4C7511FEE655DFE7F085A8A413F6BE16"
      unitRef="usd">122241000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember"
      decimals="-3"
      id="d48747837e797-wk-Fact-C5BA1B2401D086F08F33A8A413F250DB"
      unitRef="usd">99435000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tyl_ComputerEquipmentAndPurchasedSoftwareMember"
      decimals="-3"
      id="d48747837e816-wk-Fact-110E2CC1118F9A5C62EBA8A413F20A96"
      unitRef="usd">84649000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      id="d48747837e836-wk-Fact-CF3A30C3918396820ECCA8A413EEAF55">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      decimals="-3"
      id="d48747837e850-wk-Fact-9BC3856903F3608ABA44A8A413F27FCB"
      unitRef="usd">28506000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      decimals="-3"
      id="d48747837e869-wk-Fact-A550F4406D77FB3D8D67A8A413F64D3B"
      unitRef="usd">27238000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember"
      id="d48747837e889-wk-Fact-36395ABB6E6C26F887C1A8A413EE85DC">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember"
      decimals="-3"
      id="d48747837e903-wk-Fact-2076E054D072E570E034A8A413F26C9E"
      unitRef="usd">402000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_TransportationEquipmentMember"
      decimals="-3"
      id="d48747837e922-wk-Fact-A485D76C342B51CC1E0EA8A413F2BD06"
      unitRef="usd">438000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48747837e957-wk-Fact-64E8D84B8433E2ED3E01A8A413F2384A"
      unitRef="usd">284444000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48747837e976-wk-Fact-D88101898E111CAB4F25A8A413EE6EB4"
      unitRef="usd">244524000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48747837e1011-wk-Fact-9697A7DFA16A901101B0A8A413EE97AD"
      unitRef="usd">112583000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48747837e1031-wk-Fact-4E5FAFA44446ED8C84E0A8A413F25A2F"
      unitRef="usd">89347000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48747837e1072-wk-Fact-956974638BE1AC793DF0A8A413F65492"
      unitRef="usd">171861000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48747837e1091-wk-Fact-BA04C938D77311E9754AA8A414440441"
      unitRef="usd">155177000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48747837e1105-wk-Fact-11DA9C0C5FDC308342A1A8A41478513E"
      unitRef="usd">23400000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48747837e1113-wk-Fact-577531534CEA83010AADA8A414749C6E"
      unitRef="usd">21200000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48747837e1121-wk-Fact-ACB3F2E95B3FEFFFD305A8A41478A2BB"
      unitRef="usd">17300000</us-gaap:Depreciation>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48747837e1133-wk-Fact-FC5419AB4857973115A92CEBFB0CB929"
      unitRef="usd">20800000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48747837e1137-wk-Fact-D8DE56591680DAA7EB6E2CF00BEB3EAF"
      unitRef="usd">2200000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsToAcquireBuildings
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember"
      decimals="-5"
      id="d48747837e1156-wk-Fact-B93D3C31AD32B28981EFA8A41470CE13"
      unitRef="usd">2900000</us-gaap:PaymentsToAcquireBuildings>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_LathamNewYorkMember"
      decimals="-5"
      id="d48747837e1160-wk-Fact-82BE15B4B80C6866E1B6A8A414741C8C"
      unitRef="usd">2100000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_tyl_YarmouthMaineMember"
      decimals="-5"
      id="d48747837e1164-wk-Fact-EF048806C166E8164935A8A414749F20"
      unitRef="usd">19400000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-C35D7E5570EBD7B0D6E5A8A4149092D9-0-wk-Fact-210EF28D615B7C802F46A8A413F2FDEA">&lt;span style="font-family:inherit;font-size:10pt;"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The changes in the carrying amount of goodwill for the two years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;651,430&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;657,987&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to the purchase of Socrata&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,657&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,657&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,074&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,074&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;747,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;753,718&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to the purchase of MicroPact&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,080&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,080&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;833,560&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other intangible assets and related accumulated amortization consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross carrying amount of other intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Customer related intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;321,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;238,219&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;262,286&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;202,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Trade names&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capitalized software development costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,804&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Leases acquired&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,037&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;616,051&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;461,234&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(237,137&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(184,382&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total other intangibles, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;378,914&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;276,852&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Amortization expense for acquired software and capitalized software development costs are recorded to cost of revenues. Amortization expense for customer relationships and trade names are recorded to selling, general and administrative expenses. Total amortization expense for other intangibles was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$52.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$39.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$35.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The amortization periods of other intangible assets is summarized in the following table:&lt;/span&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="22"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:35%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Carrying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Carrying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-amortizable intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;753,718&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortizable intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Customer related intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;321,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;97,320&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;238,219&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;78,120&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;262,286&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;130,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;202,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;99,772&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Trade names&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,139&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capitalized software development costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,804&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Leases acquired&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,037&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Estimated annual amortization expense related to acquired leases will be recorded as a reduction to hardware and other revenue and is expected to be &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$525,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$525,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2021&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$525,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2022&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$525,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2023&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$525,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2024&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$512,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; thereafter&lt;/span&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:62.77777777777778%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:86%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;54,045&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,687&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,989&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,005&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-44FCD1F4865BC1061A32A8A414908207-0-wk-Fact-090B915EE6B966DAD3C4A8A413E1A851">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The changes in the carrying amount of goodwill for the two years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:63%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;651,430&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;657,987&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to the purchase of Socrata&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,657&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,657&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,074&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,074&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;747,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;753,718&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to the purchase of MicroPact&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill acquired related to other acquisitions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,080&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,080&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance as of 12/31/2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;833,560&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,557&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e691-wk-Fact-1B4B6DFE56163072E80E2FAB3CEA8B79"
      unitRef="usd">651430000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2017Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e710-wk-Fact-DCA628AA83E09B9FE2DE2FAB3CEA09AA"
      unitRef="usd">6557000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48750440e729-wk-Fact-3F8E44B23EF4250828802FAB3CEA7EA2"
      unitRef="usd">657987000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e745-wk-Fact-069DFD48CE535A957F602FABA696BD5E"
      unitRef="usd">75657000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e764-wk-Fact-4B73E152EB87CF9BEBE52FABA68DF120"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_SocrataInc.Member"
      decimals="-3"
      id="d48750440e783-wk-Fact-87C0C7D48085B375B4672FABA691BE6E"
      unitRef="usd">75657000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e804-wk-Fact-C37415680D818551DAA42FABA69F8260"
      unitRef="usd">20074000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e823-wk-Fact-2087272ABCFE775912D12FABA69BC2B8"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"
      decimals="-3"
      id="d48750440e842-wk-Fact-F39BAC747842BB22B73A2FABA6897194"
      unitRef="usd">20074000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e863-wk-Fact-FB5E9B07A4D6E7C6EA902FABCF6B9026"
      unitRef="usd">747161000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2018Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e882-wk-Fact-59A2ACA9F8DE08B3E3992FABCF7AEFF0"
      unitRef="usd">6557000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750440e901-wk-Fact-3BDECAB71ABF01038FDAA8A414486727"
      unitRef="usd">753718000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e922-wk-Fact-6958AFA0C21F84E932C22FAC8964680C"
      unitRef="usd">76319000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e941-wk-Fact-5BD125C8220410F37A772FAC895DF41B"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_tyl_MPHoldingsParentInc.dbaMicroPactMember"
      decimals="-3"
      id="d48750440e960-wk-Fact-96D1762E7AFCB0F425B92FAC89619F33"
      unitRef="usd">76319000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e981-wk-Fact-169E87BD5DC91872723F2FAC895497C7"
      unitRef="usd">10080000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e1000-wk-Fact-333BF7E1B185E94FE9942FAC897FA571"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"
      decimals="-3"
      id="d48750440e1019-wk-Fact-D1CA69332BAD629780202FAC8950D008"
      unitRef="usd">10080000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48750440e1045-wk-Fact-46480C985EDE6B332C102FABCF8C5C66"
      unitRef="usd">833560000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2019Q4_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48750440e1064-wk-Fact-6CA34D603ED1BF6681162FABCF8E8188"
      unitRef="usd">6557000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e1083-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-93B0765EB1451A5601B8A8A4149039A2-0-wk-Fact-CF4AD4C46377E45313A8A8A413F64181">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other intangible assets and related accumulated amortization consists of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross carrying amount of other intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Customer related intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;321,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;238,219&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;262,286&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;202,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Trade names&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capitalized software development costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,804&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Leases acquired&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,037&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;616,051&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;461,234&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(237,137&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(184,382&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total other intangibles, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;378,914&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;276,852&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e1210-wk-Fact-6D1A9614B9B45398A236A8A413FE67C5"
      unitRef="usd">321019000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e1229-wk-Fact-C867724F1B7EFA97FD8DA8A413FE8F71"
      unitRef="usd">238219000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e1244-wk-Fact-AF37BBB33AF767D5BE4EA8A41402C4C7"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e1263-wk-Fact-396ED5174CB7028DFC85A8A413FEA89C"
      unitRef="usd">202416000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e1283-wk-Fact-E14BF786B0F3B575441FA8A413FE63BE"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e1302-wk-Fact-41546A743C2246EAF281A8A413FE955B"
      unitRef="usd">16905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e1322-wk-Fact-60BF1BF68AEE1EB4D0EE1B2360CA718A"
      unitRef="usd">4804000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e1341-wk-Fact-88638E3A88D17DCC023F1B2360B13B9E"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e1361-wk-Fact-F40AFD455AF723522F3BA8A413FE1D7E"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e1380-wk-Fact-FF7BB37D2FA59D5F3957A8A413FEBE8C"
      unitRef="usd">3694000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e1400-wk-Fact-F9C3083DCC99FF05428BA8A413FE051C"
      unitRef="usd">616051000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750440e1419-wk-Fact-99DB1A80C2EE6A98E3F6A8A41402BC23"
      unitRef="usd">461234000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e1439-wk-Fact-74E23A02925A00D27C32A8A414028A8B"
      unitRef="usd">237137000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750440e1459-wk-Fact-4EE609A6D697C1432717A8A414023957"
      unitRef="usd">184382000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e1485-wk-Fact-ED05E32393E8186CAB92A8A413F686D1"
      unitRef="usd">378914000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750440e1504-wk-Fact-445367394A1A9150FBB3A8A4146C26AC"
      unitRef="usd">276852000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48750440e1519-wk-Fact-CCD2CC08C319AD068A59A8A4147C9252"
      unitRef="usd">52800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48750440e1527-wk-Fact-E6E8A409781119313C07A8A413F63ECD"
      unitRef="usd">39600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48750440e1535-wk-Fact-9105F5897D1AC4B368A9A8A41460F695"
      unitRef="usd">35500000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-00A662DBCD705E2834D4A8A41490E0DA-0-wk-Fact-822831C2BDE8682D3495A8A4147C3D9D">:&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="22"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:35%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="10" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Carrying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Carrying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accumulated Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-amortizable intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;753,718&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortizable intangibles:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Customer related intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;321,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;97,320&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;238,219&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;78,120&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;262,286&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;130,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;202,416&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;99,772&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Trade names&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,905&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,139&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capitalized software development costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,804&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Leases acquired&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,037&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:Goodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e1959-wk-Fact-9B519465DCFC0D01ABE6A8A4144C792F"
      unitRef="usd">840117000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750440e2012-wk-Fact-3BDECAB71ABF01038FDAA8A414486727"
      unitRef="usd">753718000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e2172-wk-Fact-6D1A9614B9B45398A236A8A413FE67C5"
      unitRef="usd">321019000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      id="d48750440e2191-wk-Fact-4D363C21717D6919C066A8A4147C4A5C">P16Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e2205-wk-Fact-627DE63B52066CEA8AFAA8A4143CB7E7"
      unitRef="usd">97320000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e2225-wk-Fact-C867724F1B7EFA97FD8DA8A413FE8F71"
      unitRef="usd">238219000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      id="d48750440e2244-wk-Fact-966DF7B0515F05AC2838A8A4143C8079">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember"
      decimals="-3"
      id="d48750440e2258-wk-Fact-1F93BBED06C9C1E4F2B1A8A41438DE71"
      unitRef="usd">78120000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e2278-wk-Fact-AF37BBB33AF767D5BE4EA8A41402C4C7"
      unitRef="usd">262286000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      id="d48750440e2297-wk-Fact-B4C749A4A7ECC23F9103A8A4143C65AA">P7Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e2311-wk-Fact-ECDF0CA3F86C046A8E8AA8A41434C04D"
      unitRef="usd">130416000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e2331-wk-Fact-396ED5174CB7028DFC85A8A413FEA89C"
      unitRef="usd">202416000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      id="d48750440e2350-wk-Fact-4BC05620ECD799B9B2D1A8A41438C7EA">P7Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tyl_SoftwareAcquiredMember"
      decimals="-3"
      id="d48750440e2364-wk-Fact-D893B447CC3B2E7C4080A8A41438115E"
      unitRef="usd">99772000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e2384-wk-Fact-E14BF786B0F3B575441FA8A413FE63BE"
      unitRef="usd">22905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      id="d48750440e2403-wk-Fact-2EE7B85BD0D54159C0D2A8A4143CD16B">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e2417-wk-Fact-A56DE878BDD25727E8C1A8A4143C619A"
      unitRef="usd">7205000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e2437-wk-Fact-41546A743C2246EAF281A8A413FE955B"
      unitRef="usd">16905000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      id="d48750440e2456-wk-Fact-989A871B89E5281833D9A8A41438E3CE">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d48750440e2470-wk-Fact-E85EA0080DD7C2757C7BA8A4147C150C"
      unitRef="usd">5139000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e2495-wk-Fact-60BF1BF68AEE1EB4D0EE1B2360CA718A"
      unitRef="usd">4804000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      id="d48750440e2509-wk-Fact-6213A5F1A6A806F20C5739E948306FC6">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e2528-wk-Fact-5576D7B8EAB65FF727ED39E95DA506DE"
      unitRef="usd">296000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e2548-wk-Fact-88638E3A88D17DCC023F1B2360B13B9E"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="d48750440e2581-wk-Fact-D38E2F7A9BDEAD5BFF2939E95DA95760"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2596-wk-Fact-F40AFD455AF723522F3BA8A413FE1D7E"
      unitRef="usd">5037000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      id="d48750440e2615-wk-Fact-7F1C09F9DB60D1644FBEA8A4143CFD23">P9Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2629-wk-Fact-9A35E7A5F964CA8831D4A8A414380D70"
      unitRef="usd">1900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2649-wk-Fact-FF7BB37D2FA59D5F3957A8A413FEBE8C"
      unitRef="usd">3694000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="FD2018Q4YTD_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      id="d48750440e2668-wk-Fact-517946BDCA4A20926D3FA8A4147CF42E">P10Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2682-wk-Fact-CCC55BA898DD234465BBA8A4143CB112"
      unitRef="usd">1351000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2707-wk-Fact-F5EF796E8F5FF3AF3603A8A4147C055F"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2715-wk-Fact-25C1703E383F4DB5E049A8A413EA8EA7"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2723-wk-Fact-B72D7024CFBFCBAC9F87A8A413EA6BE9"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2732-wk-Fact-CAE7001774E86F1A59F9A8A413F245A3"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2740-wk-Fact-F3AEF4B78FD38BE4452BA8A413F67706"
      unitRef="usd">525000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_LeasesAcquiredInPlaceMember"
      decimals="-3"
      id="d48750440e2748-wk-Fact-5566D9A0A3D463D8217FA8A413F2A6FB"
      unitRef="usd">512000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-9E3BBDECC623637F39C7A8A41490876D-0-wk-Fact-2C0D52AF5300D68EE19DA8A413E5D237">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Estimated annual amortization expense related to other intangibles, including customer relationships, acquired software, trade names and capitalized software development costs is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:62.77777777777778%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:86%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;54,045&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,687&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,989&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,005&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2787-wk-Fact-F609A583A4878BFE68C4A8A4144CBE03"
      unitRef="usd">54045000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2802-wk-Fact-E739E3971CB927AB0F42A8A4144CEBB9"
      unitRef="usd">53687000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2822-wk-Fact-0EC1C5A83296B7460AD0A8A4144C2E5A"
      unitRef="usd">49989000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2842-wk-Fact-4B12BD1FE2986BEAF81CA8A4144CA7B4"
      unitRef="usd">31838000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2862-wk-Fact-0AE71CEDF45025F733F8A8A4144C39CD"
      unitRef="usd">31213000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750440e2887-wk-Fact-EFE8AB3D7B8C77D6235EA8A4144CE246"
      unitRef="usd">155005000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-AB686FCDFEB26726A1D0A8A414908B45-0-wk-Fact-5C93B68EF3045B0A2FA4A8A414483AE5">&lt;span style="font-family:inherit;font-size:10pt;"&gt;ACCRUED LIABILITIES&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued liabilities consist of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:71%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accrued wages, bonuses and commissions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other accrued liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26,108&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26,380&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,234&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66,480&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-087DD963B7D898AE06E4A8A41490F851-0-wk-Fact-2BEE53824E00ED088A29A8A4144899BF">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued liabilities consist of the following at December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:71%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Accrued wages, bonuses and commissions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other accrued liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26,108&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26,380&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,234&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66,480&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750800e658-wk-Fact-E907023E0CEB8020DB34A8A4140A4D78"
      unitRef="usd">49126000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750800e677-wk-Fact-777A41A2E016DB118FFAA8A4140AF224"
      unitRef="usd">40100000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750800e692-wk-Fact-B607A36F80F54BB431D2A8A4140A4637"
      unitRef="usd">26108000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750800e711-wk-Fact-E20AE6FCFC26D18164A5A8A4140A5B9B"
      unitRef="usd">26380000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48750800e736-wk-Fact-0C8B9460C27847D09583A8A414744443"
      unitRef="usd">75234000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48750800e755-wk-Fact-603BC66574C110E7A142A8A41460AFDA"
      unitRef="usd">66480000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-A23CF85DCD6654639FE8A8A41490EEDD-0-wk-Fact-725C4BA6647A2AE1306BA8A413EAD0BB">&lt;span style="font-family:inherit;font-size:10pt;"&gt;REVOLVING LINE OF CREDIT&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;September&#160;30, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we entered into a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$400 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; credit agreement (the &#x201c;Credit Facility&#x201d;) with the various lenders party thereto and Wells Fargo Bank, National Association, as Administrative Agent. The Credit Agreement provides for an unsecured revolving credit facility in an aggregate principal amount of up to&#160;$&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;400.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, including a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$25.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; sublimit for letters of credit. The Credit Facility matures on &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;September&#160;30, 2024&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Borrowings under the Credit Facility may be used for general corporate purposes, including working capital requirements, acquisitions and share repurchases.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Borrowings under the Credit Facility bear interest at a rate of either (1) Wells Fargo Bank&#x2019;s&#160;prime rate (subject to certain higher rate determinations) plus a margin of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.125%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.75%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or (2) the 30, 60, 90 or 180-day LIBOR rate plus a margin of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.125%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.75%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160; As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, our interest rate was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4.88%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; under the prime rate option or approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.89%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; under the 30-day LIBOR option. The Credit Facility requires us to maintain certain financial ratios and other financial conditions and prohibits us from making certain investments, advances, cash dividends or loans, and limits incurrence of additional indebtedness and liens. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we were in compliance with those covenants&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;color:#ff0000;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; outstanding borrowings and had unused borrowing capacity of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$400 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; under the Credit Facility&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;.&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; In addition, as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; outstanding letter of credit.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We paid interest of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1,750,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$770,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$804,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="INF"
      id="d48750535e588-wk-Fact-2F687E9EF25E76073C9FA8A413EAAA2E"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="INF"
      id="d48750535e592-wk-Fact-2F687E9EF25E76073C9FA8A413EAAA2E"
      unitRef="usd">400000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="FI2019Q3_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_ShortTermDebtTypeAxis_us-gaap_LetterOfCreditMember"
      decimals="INF"
      id="d48750535e596-wk-Fact-D4F9C17EC69859F00137A8A413EA733E"
      unitRef="usd">25000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember"
      decimals="INF"
      id="d48750535e609-wk-Fact-619464CA133802366678A8A413EAF74B"
      unitRef="number">0.00125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_PrimeRateMember"
      decimals="INF"
      id="d48750535e613-wk-Fact-D62B768B756B888A8AA4A8A413EADB45"
      unitRef="number">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember"
      decimals="INF"
      id="d48750535e617-wk-Fact-2D82273E2F4DBB247820A8A413EE2169"
      unitRef="number">0.01125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="FD2019Q3YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember"
      decimals="INF"
      id="d48750535e621-wk-Fact-3281CBC24E7AB8DA94B7A8A413EAF12B"
      unitRef="number">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="INF"
      id="d48750535e633-wk-Fact-A83E535CD4B30C4FC5FAA8A413EA77E9"
      unitRef="number">0.0488</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember_us-gaap_VariableRateAxis_us-gaap_LondonInterbankOfferedRateLIBORMember"
      decimals="4"
      id="d48750535e637-wk-Fact-189FF35998F6CF2C8F13A8A413EA042E"
      unitRef="number">0.0289</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:LongTermLineOfCredit
      contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="INF"
      id="d48750535e654-wk-Fact-47EF9B90BE75C29D49B2A8A413EE402B"
      unitRef="usd">0</us-gaap:LongTermLineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="-6"
      id="d48750535e658-wk-Fact-A6168A4E0B800882A363A8A413EE844B"
      unitRef="usd">400000000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <tyl:NumberofOutstandingLetterofCredit
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48750535e671-wk-Fact-892AF08EE5839A35016BA8A413E51F3F"
      unitRef="letters_of_credit">0</tyl:NumberofOutstandingLetterofCredit>
    <us-gaap:InterestPaidNet
      contextRef="FD2019Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="-3"
      id="d48750535e678-wk-Fact-B3C44338E66697E8F39AA8A413EE71F5"
      unitRef="usd">1750000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="FD2018Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="-3"
      id="d48750535e686-wk-Fact-960842D4E1E12FF41BB6A8A413EE2644"
      unitRef="usd">770000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="FD2017Q4YTD_us-gaap_DebtInstrumentAxis_tyl_CreditAgreementMember"
      decimals="-3"
      id="d48750535e694-wk-Fact-F826B53FF0650CFD4894A8A413EAA47C"
      unitRef="usd">804000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-0E0DDCEC8E1D048B9756A8A4149454FD-0-wk-Fact-72ACD300175F13D1B8F9A8A41418F91D">&lt;span style="font-family:inherit;font-size:10pt;"&gt;INCOME TAX &lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income tax provision (benefit)&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; on income from operations consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Current:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Federal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;12,814&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,110&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,883&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,585&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,367&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,666&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,399&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,477&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,549&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,088&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,069&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(33,664&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,408&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Federal income tax expense at statutory rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;33,566&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;32,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;57,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;State income tax, net of federal income tax benefit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,953&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,754&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Domestic production activities deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2,617&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Excess tax benefits related to stock option exercises&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29,819&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(32,487&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(40,624&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Tax Act adjustments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,750&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(25,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Tax credits&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,446&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,715&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,578&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-deductible business expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,011&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,655&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,573&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;160&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,408&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating expenses not currently deductible&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,214&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,989&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock option and other employee benefit plans&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Loss and credit carryforwards&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,363&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,484&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,923&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,049&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax assets, net of valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;51,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45,435&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(84,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(70,752&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Property and equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,265&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,455&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Prepaid expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,922&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,079&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,676&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,940&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(99,882&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(87,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(48,442&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(41,791&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:10pt;color:#000000;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had federal net operating loss carryforwards of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$85.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, after-tax state net operating loss carryforwards of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and tax credit carryforwards of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.  The federal net operating loss carryforward will begin to expire in 2032 if not utilized, and a portion of the state net operating loss and tax credit carryforwards begin expiring in 2020 if not utilized.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The acquired carryforwards are subject to an annual limitation but are expected to be realized with the exception of certain state net operating loss and tax credit carryforwards.  The valuation allowance disclosed in the table above relates to state net operating losses and tax credit carryforwards that are likely to expire before utilization.  We believe it is more likely than not that all other deferred tax assets will be realized. However, the amount of the deferred tax asset considered realizable could be adjusted in the future if estimates of reversing taxable temporary differences are revised.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In connection with the acquisition of Socrata in 2018, we recorded a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; liability for an uncertain tax position associated with acquired tax credit carryforwards. The unrecognized tax benefits are included in deferred income taxes in our consolidated balance sheets. The entire amount, if recognized, would affect the effective tax rate.  There was no change in the balance of unrecognized tax benefits during &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.  Based on the information currently available, we do not anticipate a significant increase or decrease to our tax contingencies for these issues for the next 12 months.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We are subject to U.S. federal income tax, as well as income tax of multiple state, local and foreign jurisdictions. We are routinely subject to income tax examinations by these taxing jurisdictions, but we do not have a history of, nor do we expect any material adjustments as a result of these examinations.  With few exceptions, major U.S. federal, state, local and foreign jurisdictions are no longer subject to examination for years before 2015.  As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;February&#160;19, 2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, no significant adjustments have been proposed by any taxing jurisdiction.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We paid income taxes, net of refunds received, of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$36.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7E29720196E86F2E8FECA8A414944962-0-wk-Fact-3412DE1237C69572ABB8A8A4141835DF">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income tax provision (benefit)&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; on income from operations consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Current:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Federal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;12,814&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,110&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;22,883&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,585&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,367&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,666&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,399&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,477&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,549&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,088&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,069&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(33,664&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,408&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e811-wk-Fact-2B00A85514FE8E1A3DF1A8A41417E58B"
      unitRef="usd">12814000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e830-wk-Fact-0575C73DF75EF08D19BAA8A41418298A"
      unitRef="usd">9110000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e849-wk-Fact-1524AFB84187C28B5922A8A41412A20D"
      unitRef="usd">22883000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e865-wk-Fact-D32BCC08245ABBC4E42AA8A41412783D"
      unitRef="usd">6585000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e884-wk-Fact-CD299E49FCA36C08C4D0A8A4140ECD6D"
      unitRef="usd">4367000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e903-wk-Fact-46BEF5B19A204BD38298A8A41412515D"
      unitRef="usd">4666000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e924-wk-Fact-9B248A5B96535076EFF9A8A414122847"
      unitRef="usd">19399000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e943-wk-Fact-02A29CC0EC04CCF6B764A8A4140ECDDB"
      unitRef="usd">13477000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e962-wk-Fact-260CF753A3A17FA3793EA8A41412E6A5"
      unitRef="usd">27549000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e983-wk-Fact-233FBB96D5386B99336EA8A414023908"
      unitRef="usd">-6088000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1003-wk-Fact-DF8D9632546CC2F32587A8A41428077F"
      unitRef="usd">-5069000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1023-wk-Fact-04C2B2FDC17E67C3ED11A8A4142CBF29"
      unitRef="usd">-33664000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1050-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1069-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1088-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406"
      unitRef="usd">-6115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-A18ED841E9800B17B281A8A4149472B4-0-wk-Fact-D706A01DD280B29CEA08A8A41417D83F">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Federal income tax expense at statutory rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;33,566&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;32,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;57,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;State income tax, net of federal income tax benefit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,953&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,754&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Domestic production activities deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2,617&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Excess tax benefits related to stock option exercises&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29,819&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(32,487&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(40,624&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Tax Act adjustments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,750&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(25,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Tax credits&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,446&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,715&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,578&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-deductible business expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,011&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,655&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,573&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;160&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,408&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1266-wk-Fact-72D5BB776A9E593BB354A8A4142C7AF0"
      unitRef="usd">33566000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1285-wk-Fact-78B4A9C54EE44223DFA5A8A414249F87"
      unitRef="usd">32733000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1304-wk-Fact-6CEAED80B5411F4D18A1A8A414285926"
      unitRef="usd">57209000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1320-wk-Fact-E85AB287BD2C275663EAA8A41428BAF9"
      unitRef="usd">6999000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1339-wk-Fact-DE3ECF4B64D5754DC6E6A8A4142897AB"
      unitRef="usd">7953000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1358-wk-Fact-51C18B0C00B6D8DCA3AAA8A414285BD6"
      unitRef="usd">4754000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1379-wk-Fact-A4BEE152A03344156EC1A8A41428185A"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1398-wk-Fact-9EE3984737F61524445FA8A4142CEE71"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1417-wk-Fact-3737A53FBBE7F275CCB0A8A41428A072"
      unitRef="usd">2617000</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1439-wk-Fact-67CFB50BD29D232D5CBFA8A4142CDDBD"
      unitRef="usd">-29819000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1459-wk-Fact-421F06E8955089AC1652A8A414246576"
      unitRef="usd">-32487000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1479-wk-Fact-85572384C583FF49B1BCA8A41428FB64"
      unitRef="usd">-40624000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1501-wk-Fact-B9F71729185BCDBAE840A8A4141755A2"
      unitRef="usd">0</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1520-wk-Fact-592FD10A3AA7323D9194A8A41416326C"
      unitRef="usd">-1750000</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1540-wk-Fact-B936B7F448A7F653EFD0A8A41424B9DB"
      unitRef="usd">-25992000</tyl:TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1562-wk-Fact-4FE2CF8C8EC930D109F8A8A414282D2E"
      unitRef="usd">3446000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1582-wk-Fact-30CA09C43502D44CCE8DA8A414246ABE"
      unitRef="usd">3715000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1602-wk-Fact-498DBFFA777E6F6E5C40A8A4142C0A73"
      unitRef="usd">3578000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1624-wk-Fact-F033C20CDFF69B6AC113A8A4142413E0"
      unitRef="usd">6011000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1643-wk-Fact-2F8F82FC54E20B26D273A8A4142CE035"
      unitRef="usd">5655000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1662-wk-Fact-4F7C36CFA87A803721EAA8A4142CDE1C"
      unitRef="usd">4573000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1683-wk-Fact-2F3CD0C6D9FC16F74EBAA8A41428F93A"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1702-wk-Fact-A9EB8EE3C02903EC8440A8A414286AE8"
      unitRef="usd">19000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1721-wk-Fact-21F00BD018925A706C68A8A414245181"
      unitRef="usd">160000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48752911e1747-wk-Fact-9A2F823FAD0EA5B62D19A8A414540436"
      unitRef="usd">13311000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48752911e1766-wk-Fact-4EB41931F3A2339D0BF2A8A41458AC6A"
      unitRef="usd">8408000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48752911e1785-wk-Fact-6532E4C3E24CE639A84AA8A4146C5406"
      unitRef="usd">-6115000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-F5504A75C957E1B48E0CA8A41494B774-0-wk-Fact-D8C8CDC804B82E87E27BA8A414123B4B">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred income tax assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating expenses not currently deductible&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,214&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,989&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock option and other employee benefit plans&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Loss and credit carryforwards&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,363&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,484&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,923&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,049&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax assets, net of valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;51,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45,435&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred income tax liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(84,019&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(70,752&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Property and equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,265&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,455&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Prepaid expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,922&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(4,079&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,676&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,940&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(99,882&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(87,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(48,442&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(41,791&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e1917-wk-Fact-295346E222CDA9CFBA7FA8A4146C7861"
      unitRef="usd">10214000</tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible>
    <tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e1936-wk-Fact-BE92984E179BD44F95D6A8A414702397"
      unitRef="usd">8989000</tyl:DeferredTaxAssetsOperatingExpensesNotCurrentlyDeductible>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e1951-wk-Fact-0A70FFBE0400C534C200A8A41470DCB9"
      unitRef="usd">19308000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e1970-wk-Fact-CDCE294C051C53583D9CA8A4146C7DAE"
      unitRef="usd">19496000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits>
    <tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e1990-wk-Fact-2352EA4DC1802C94F647A8A4146CD7DD"
      unitRef="usd">23841000</tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards>
    <tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2009-wk-Fact-C0CA7CCC524B89FE2435A8A4146C26D0"
      unitRef="usd">17999000</tyl:DeferredTaxAssetsOperatingLossAndTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2029-wk-Fact-AE3D60AAAC5EE3D3811EA8A41470F519"
      unitRef="usd">53363000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2048-wk-Fact-7519D1A6165B03CCC6B7A8A4146C2DF1"
      unitRef="usd">46484000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2068-wk-Fact-AA9C9DAD6B752443AEB5A8A4146CB038"
      unitRef="usd">1923000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2088-wk-Fact-83A20345829140676DF1A8A41470A981"
      unitRef="usd">1049000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2109-wk-Fact-41C040F8E9008B69C209A8A41470AFF3"
      unitRef="usd">51440000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2128-wk-Fact-B240D909B1FA88A9F03AA8A4146C9109"
      unitRef="usd">45435000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2230-wk-Fact-D43F0429E571FEE0A3B7A8A4147089E6"
      unitRef="usd">84019000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2250-wk-Fact-8CFDE9067F5CB01E918AA8A414708442"
      unitRef="usd">70752000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2272-wk-Fact-F8B63C7E80F449F17892A8A4146CCB63"
      unitRef="usd">9265000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2292-wk-Fact-8F5D14651EE86E4A1169A8A4146C04F2"
      unitRef="usd">8455000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2313-wk-Fact-C7751275189FF658F7AAA8A41470A427"
      unitRef="usd">4922000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2333-wk-Fact-90CCCD0D23C4AF4EB6DFA8A41470A266"
      unitRef="usd">4079000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2354-wk-Fact-F8FE9B4C6CF36BF7B1E5A8A41470A18E"
      unitRef="usd">1676000</us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome>
    <us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2374-wk-Fact-1AFADC64648AAC9A4D9AA8A41470C5F2"
      unitRef="usd">3940000</us-gaap:DeferredTaxLiabilitiesTaxDeferredIncome>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2395-wk-Fact-E2950E918052394EB8EDA8A414706A48"
      unitRef="usd">99882000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2415-wk-Fact-C6CD30947737EB1B8193A8A414703BA5"
      unitRef="usd">87226000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48752911e2441-wk-Fact-CB5F9D12E5A730BE61D3A8A41470577F"
      unitRef="usd">48442000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48752911e2461-wk-Fact-C9681FE071EC9D6DEEE4A8A4146CD433"
      unitRef="usd">41791000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:OperatingLossCarryforwards
      contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember"
      decimals="-5"
      id="d48752911e2480-wk-Fact-F4CD7A30645FCDDFD459A8A414120C7C"
      unitRef="usd">85200000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember"
      decimals="-5"
      id="d48752911e2484-wk-Fact-B6DD1B3E8AE0514FBE934170B6B44E9C"
      unitRef="usd">3100000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48752911e2488-wk-Fact-B4642372AA7892F87E0441719E7CB935"
      unitRef="usd">4800000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48752911e2500-wk-Fact-A03FA6C083B537DF1AE5A8A41412D9EB"
      unitRef="usd">1900000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48752911e2525-wk-Fact-91D2F0887D42B78E449BA8A4141232DB"
      unitRef="usd">21300000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48752911e2533-wk-Fact-BC93637875F1A49BC764A8A4141637CF"
      unitRef="usd">6800000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48752911e2541-wk-Fact-2A0D84BB5E69BFF2AD54A8A41418827A"
      unitRef="usd">36000000.0</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7FE8A9107A978DBF8DAFA8A414941E26-0-wk-Fact-0934FE390379A7AD0243A8A413FA5137">&lt;span style="font-family:inherit;font-size:10pt;"&gt;SHAREHOLDERS&#x2019; EQUITY&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table details activity in our common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="21"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:35%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="20" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock option exercises&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;96,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;74,907&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,113&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Purchases of common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(72&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(14,289&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(150,050&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(44&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,613&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Employee stock plan purchases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,576&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,051&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;51&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,044&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Restricted stock units vested, net of withheld shares upon award settlement&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,361&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;February&#160;19, 2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had authorization from our board of directors to repurchase up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; additional shares of our common stock.&lt;/span&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfStockholdersEquityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-C17D4CAE0AE9FDCB48DAA8A4149448A6-0-wk-Fact-A4523B1B1102C4AB2E8DA8A413FABAF7">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table details activity in our common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="21"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:35%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="20" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="6" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock option exercises&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;96,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;74,907&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,113&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;49,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Purchases of common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(72&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(14,289&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(150,050&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(44&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(6,613&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Employee stock plan purchases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,576&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,051&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;51&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,044&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Restricted stock units vested, net of withheld shares upon award settlement&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,361&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockholdersEquityTableTextBlock>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e943-wk-Fact-66A6D7B4DD6FF7039E1F1B82E87DC5E0"
      unitRef="shares">999000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e962-wk-Fact-BB00C5D3B67C7629EBDCA8A414343064"
      unitRef="usd">96908000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e976-wk-Fact-01CA83F48ACF6CBCABD5A8A4142C3402"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e996-wk-Fact-AE38038BB58589E8B718A8A4143452CC"
      unitRef="usd">74907000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1010-wk-Fact-A264F44F0CC63AA7E546A8A4142CFD5B"
      unitRef="shares">1113000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1029-wk-Fact-22D5F1AA9D4A31160287A8A41424BEB1"
      unitRef="usd">49845000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1044-wk-Fact-151E933AB2508FE99D06A8A4142CB9A5"
      unitRef="shares">72000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1059-wk-Fact-86CD06ECA10567DA01F3A8A4143462BF"
      unitRef="usd">14289000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1079-wk-Fact-F220ED4106B7EC30065CA8A414286A6B"
      unitRef="shares">781000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1095-wk-Fact-1FCC20A5B75088524C85A8A41418E545"
      unitRef="usd">150050000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1115-wk-Fact-C3CCDE78839870A46C5BA8A4142878EC"
      unitRef="shares">44000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1130-wk-Fact-7532671C68CAEB127061A8A414187D5D"
      unitRef="usd">6613000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1151-wk-Fact-3EA479B4971EF1BB11BDA8A41428DEBC"
      unitRef="shares">53000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1165-wk-Fact-61E43DB65B80D63B215BA8A414247AFE"
      unitRef="usd">9576000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1184-wk-Fact-0EF792E3DDCD8752FDFBA8A4142CE70B"
      unitRef="shares">45000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1199-wk-Fact-71D4983CED9ED71F20E0A8A4143C1521"
      unitRef="usd">8051000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1218-wk-Fact-92CEA96CF636375731F7A8A4142867A2"
      unitRef="shares">51000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1232-wk-Fact-335CD0EC08D6891C8C0FA8A414180718"
      unitRef="usd">7044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1252-wk-Fact-28084431499679C76B8E1B8329450ABB"
      unitRef="shares">53000</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48753869e1266-wk-Fact-6D770BA821A3BEFF247C2CF92729A434"
      unitRef="usd">-5361000</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1286-wk-Fact-9389F023A7107A5B8F2D1B836E82BA8F"
      unitRef="shares">0</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48753869e1301-wk-Fact-F430D86451B24DC1636B1B83886BAE86"
      unitRef="usd">0</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1320-wk-Fact-DC1817E6834B6B9CDA551B836E5DA7FF"
      unitRef="shares">0</tyl:ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement>
    <tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48753869e1334-wk-Fact-08764A41F36ADBA3D7891B83884CB83B"
      unitRef="usd">0</tyl:StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="I2020Q1Feb19_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember"
      decimals="-5"
      id="d48753869e1357-wk-Fact-8A7A551AF0ACDC962ACFA8A413FAF603"
      unitRef="shares">2600000</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-1469E4AC18D90AB39607A8A414941F0B-0-wk-Fact-52829EC4DF0825B9FFEEA8A413F65141">&lt;span style="font-family:inherit;font-size:10pt;"&gt;SHARE-BASED COMPENSATION&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Share-Based Compensation Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In May 2018, stockholders approved the Tyler Technologies, Inc. 2018 Stock Incentive Plan ("the 2018 Plan") which amended and restated the existing Tyler Technologies, Inc. 2010 Stock Option Plan ("the 2010 Plan"). Upon stockholder approval of the 2018 Plan, the remaining shares available for grant under the 2010 Plan were added to the shares authorized for grant under the 2018 Plan. Additionally, any awards previously granted under the 2010 Plan that expire unexercised or are forfeited are added to the shares authorized for grant under the 2018 Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;During fiscal year&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we granted stock awards under the 2018 Plan in the form of stock options, restricted stock units and performance share units. Stock options generally vest after &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;six years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant and have a contractual term of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10 years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Once options become exercisable, the employee can purchase shares of our common stock at the market price on the date we granted the option. Restricted stock unit grants generally vest ratably over&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Stock Compensation&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, there were &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares available for future grants under the plan from the &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;22.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares previously approved by the shareholders.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Determining Fair Value of Stock Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Valuation and Amortization Method. We estimate the fair value of stock option awards granted using the Black-Scholes option valuation model. For restricted stock unit and performance stock unit awards, we amortize the fair value of all awards on a straight-line basis over the requisite service periods, which are generally the vesting periods.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expected Life. The expected life of awards granted represents the period of time that they are expected to be outstanding. The expected life represents the weighted-average period the stock options are expected to be outstanding based primarily on the options&#x2019; vesting terms, remaining contractual life and the employees&#x2019; expected exercise based on historical patterns.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expected Volatility. Using the Black-Scholes option valuation model, we estimate the volatility of our common stock at the date of grant based on the historical volatility of our common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Risk-Free Interest Rate. We base the risk-free interest rate used in the Black-Scholes option valuation model on the implied yield currently available on U.S. Treasury zero-coupon issues with an equivalent remaining term equal to the expected life of the award.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expected Dividend Yield. We have not paid any cash dividends on our common stock in more than ten years and we do not anticipate paying any cash dividends in the foreseeable future. Consequently, we use an expected dividend yield of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;zero&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in the Black-Scholes option valuation model.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expected Forfeitures. We use historical data to estimate pre-vesting option forfeitures. We record share-based compensation only for those awards that are expected to vest.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following weighted average assumptions were used for options granted:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected life (in years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected volatility&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26.6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26.7&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28.1&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Risk-free interest rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.8&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2.7&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected forfeiture rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Share-Based Award Activity&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes restricted stock unit and performance stock unit activity during fiscal year &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; (shares in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03703703703704%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:60%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:18%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Number of Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted Average Grant Date Fair Value per Share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at January 1, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229.75&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at December 31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;334&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.25&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;241.19&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(76&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.15&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(14&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229.75&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at December 31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;500&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;231.57&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Options granted, exercised, forfeited and expired are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average Exercise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Remaining&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Contractual Life&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(Years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Aggregate&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intrinsic Value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;83.64&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;824&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;176.26&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,113&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;44.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(50&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;134.83&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,817&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;107.91&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;432&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208.21&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66.53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(31&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;158.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;129.51&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;162&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;251.58&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;96.92&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;174.54&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;145.27&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;499,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercisable at December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,067&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;121.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;369,938&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We had unvested options to purchase &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares with a weighted average grant date exercise price of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$188.48&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and unvested options to purchase &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares with a weighted average grant date exercise price of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$169.24&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average grant-date fair value of stock options granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;74.54&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66.52&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;55.56&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total intrinsic value of stock options exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;176,716&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;137,699&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Share-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes share-based compensation expense related to share-based awards which is recorded in the consolidated statements of comprehensive income:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cost of software services, maintenance and subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,002&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,588&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,415&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;44,965&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,152&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,933&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total share-based compensation expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;59,967&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;52,740&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Excess tax benefit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29,819&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(32,487&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(40,624&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net decrease (increase) in net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;30,148&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,253&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,276&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$148.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of total unrecognized compensation cost related to unvested options and restricted stock units, net of expected forfeitures, which is expected to be amortized over a weighted average amortization period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.5&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;text-decoration:underline;"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Under our Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) participants may contribute up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the closing price of Tyler shares on the last day of each quarterly offering period. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, there were &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;702,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares available for future issuances the ESPP from the &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares previously approved by the stockholders.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48757553e598-wk-Fact-F8C48747F4367E78C6C8A8A413F2D224">P6Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48757553e602-wk-Fact-24DC000EE1A9EE82D0FCA8A414688F4E">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="d48757553e611-wk-Fact-9536FC73F3E1B343B3C2A8A41434A668">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48757553e626-wk-Fact-794C358E8618335BDCB8A8A413F61987"
      unitRef="shares">3100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48757553e630-wk-Fact-1B24CA713F80F47F8C24A8A413F26949"
      unitRef="shares">22900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48757553e652-wk-Fact-7BE0B012D846F67C4A5FA8A413EEA3F2"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-A5855738638A800146E0A8A41494D000-0-wk-Fact-4B1BE66016E23F32F782A8A413F2F050">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following weighted average assumptions were used for options granted:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected life (in years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected volatility&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26.6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;26.7&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28.1&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Risk-free interest rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.8&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2.7&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2.0&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Expected forfeiture rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48757553e788-wk-Fact-AF85D5AE14FF86FB122CA8A414787DA1">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48757553e802-wk-Fact-232C72B0FF3F1999E47FA8A414782539">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48757553e816-wk-Fact-0D7D1F7DE6E44E1D6C1CA8A4147877D7">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e831-wk-Fact-C0AFD8782730DEC527DCA8A4147C192D"
      unitRef="number">0.266</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e846-wk-Fact-A353A400925BBB2CD8ACA8A414788A37"
      unitRef="number">0.267</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e861-wk-Fact-B045D6988A428C952983A8A414788F34"
      unitRef="number">0.281</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e877-wk-Fact-E8932B006A9E98540186A8A4147819CC"
      unitRef="number">0.018</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e892-wk-Fact-4A6B64F3F99D1DE64321A8A41478ECC3"
      unitRef="number">0.027</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e907-wk-Fact-FEBFEF7A165438D4E977A8A4147871E0"
      unitRef="number">0.020</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e923-wk-Fact-937FCA6E53A0331F375CA8A4147C6022"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e938-wk-Fact-B4A1180713DEE4622D12A8A4147854E9"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="3"
      id="d48757553e953-wk-Fact-8DDA818A81E7F9CF642CA8A414780365"
      unitRef="number">0</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedForfeitureRate>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-12B936B8D9E8BE5D516FA8A41494D5B4-0-wk-Fact-0740E945AB1174A85956A8A413F2A4CF">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes restricted stock unit and performance stock unit activity during fiscal year &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; (shares in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03703703703704%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:60%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:18%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:12pt;"&gt;&lt;span style="font-family:inherit;font-size:12pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Number of Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted Average Grant Date Fair Value per Share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at January 1, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229.75&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at December 31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;334&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.25&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;241.19&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(76&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221.15&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(14&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229.75&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Unvested at December 31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;500&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;231.57&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1051-wk-Fact-4503563DA76775507AE4A8A4143070E1"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1070-wk-Fact-74036D17071C8E6AA02DA8A41430DC05"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1090-wk-Fact-5209677BEEAA442FA2B2A8A414301F5F"
      unitRef="shares">336000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1104-wk-Fact-91737510EC9892D2F112A8A414308A5F"
      unitRef="usdPerShare">221.29</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1129-wk-Fact-B7322AB4244ADD9409CFA8A414302225"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1143-wk-Fact-B8F396E9508FBA5FFBA1A8A41430B80E"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1168-wk-Fact-E64878F3A1DDA7EFBBB2A8A41430C438"
      unitRef="shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1183-wk-Fact-592D0688753FBADE38C6A8A4143022A4"
      unitRef="usdPerShare">229.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1208-wk-Fact-7E53FDA8FBFEA2EC5256A8A41434581B"
      unitRef="shares">334000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1222-wk-Fact-8038E5BBD6010842450DA8A41430946D"
      unitRef="usdPerShare">221.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1247-wk-Fact-380A54F027EE2040C1531B8DAD39A3EB"
      unitRef="shares">256000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1261-wk-Fact-D359213C0F916D25C2451B8DAFF7E554"
      unitRef="usdPerShare">241.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1286-wk-Fact-8AF676CB4B0AB2E373881B8DB23BFD3C"
      unitRef="shares">76000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1301-wk-Fact-380422D9AEF8CD897ACB1B8DB5D85F38"
      unitRef="usdPerShare">221.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1326-wk-Fact-9763D309900F273116131B8DB7FD4C50"
      unitRef="shares">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1341-wk-Fact-9C1A09F8F0C7B1710F671B8DBBE976F7"
      unitRef="usdPerShare">229.75</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="-3"
      id="d48757553e1366-wk-Fact-249809D0B47A3D73A2531B8DBE2621E3"
      unitRef="shares">500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_tyl_RestrictedStockUnitandPerformanceStockUnitMember"
      decimals="2"
      id="d48757553e1385-wk-Fact-33EFED7081378B0CA1F11B8DC1677629"
      unitRef="usdPerShare">231.57</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2016Q4"
      decimals="-3"
      id="d48757553e1522-wk-Fact-D0F22104238D8E78C207A8A4144C25EA"
      unitRef="shares">5156000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2016Q4"
      decimals="2"
      id="d48757553e1541-wk-Fact-BD55D6AE7719977913E4A8A414743C50"
      unitRef="usdPerShare">83.64</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e1586-wk-Fact-ADC022D8BA043E5B1867A8A413EE2F0C"
      unitRef="shares">824000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48757553e1600-wk-Fact-AF7AEEDFAE6E3EC9B6BFA8A414745D91"
      unitRef="usdPerShare">176.26</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e1650-wk-Fact-04D302A15DFCCCB7F98CA8A414749938"
      unitRef="shares">1113000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48757553e1665-wk-Fact-400E7B9B6C174548C70CA8A4144474CD"
      unitRef="usdPerShare">44.80</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e1715-wk-Fact-DDD349A5650943CF8D6EA8A41448D4B1"
      unitRef="shares">50000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48757553e1730-wk-Fact-82673A53DA87CD6E6CD9A8A4144846CE"
      unitRef="usdPerShare">134.83</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48757553e1780-wk-Fact-23171F428BD766E13FC3A8A414484689"
      unitRef="shares">4817000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2017Q4"
      decimals="2"
      id="d48757553e1794-wk-Fact-9452E120AFBCF2353CCDA8A4144C9BD5"
      unitRef="usdPerShare">107.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e1844-wk-Fact-A2C82EE825ADE82E014DA8A41448BF05"
      unitRef="shares">432000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48757553e1858-wk-Fact-33058DF257D428000D4CA8A414448ED4"
      unitRef="usdPerShare">208.21</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e1908-wk-Fact-ED3103CB2AC7EB0E175AA8A414483137"
      unitRef="shares">1126000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48757553e1923-wk-Fact-8B963E4F8CB2AB398D94A8A413EE6CC3"
      unitRef="usdPerShare">66.53</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e1973-wk-Fact-E097EA85C235398475ACA8A414481024"
      unitRef="shares">31000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48757553e1988-wk-Fact-A04D8B5664692F26CD99A8A4144C5CED"
      unitRef="usdPerShare">158.80</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48757553e2038-wk-Fact-42A472F316527BDB78D1A8A41444E24C"
      unitRef="shares">4092000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2018Q4"
      decimals="2"
      id="d48757553e2052-wk-Fact-35BE317E6F964D6761EEA8A414788F3C"
      unitRef="usdPerShare">129.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e2103-wk-Fact-6A9B5B8741F8D0E6E06DA8A414443EF4"
      unitRef="shares">162000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48757553e2117-wk-Fact-F50668C7BAAB4714237CA8A41448F47E"
      unitRef="usdPerShare">251.58</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e2169-wk-Fact-524531B1E1EAFA2BAC32A8A4144C6F2A"
      unitRef="shares">999000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48757553e2184-wk-Fact-ECC7CF5AFF2299DE8F28A8A414745328"
      unitRef="usdPerShare">96.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e2234-wk-Fact-3B0AC3A4D6FA16158EAAA8A41448E74F"
      unitRef="shares">29000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48757553e2249-wk-Fact-2775889980B464658A38A8A41448D9AD"
      unitRef="usdPerShare">174.54</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48757553e2299-wk-Fact-C87B875291D7B2E11002A8A41478C427"
      unitRef="shares">3226000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d48757553e2318-wk-Fact-360A6099B9609C931E64A8A4144890EB"
      unitRef="usdPerShare">145.27</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="FD2019Q4YTD"
      id="d48757553e2332-wk-Fact-473210CD970FBECC8CCCA8A414746293">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48757553e2348-wk-Fact-7204C84F52712E956CA1A8A41478E776"
      unitRef="usd">499124000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48757553e2363-wk-Fact-19C037964E70A6D33497A8A414480A97"
      unitRef="shares">2067000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d48757553e2382-wk-Fact-C711CFD4A72999E15F06A8A414741F52"
      unitRef="usdPerShare">121.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="FD2019Q4YTD"
      id="d48757553e2396-wk-Fact-5CD63F287779909057B9A8A41448B26A">P6Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48757553e2412-wk-Fact-0E3C608B1BC7E12D60A2A8A4144CB32B"
      unitRef="usd">369938000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="-5"
      id="d48757553e2426-wk-Fact-D6FFD4BB14236134F25BA8A413F60525"
      unitRef="shares">1200000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48757553e2430-wk-Fact-E5C6E8D0018B624E1649A8A413F23D1C"
      unitRef="usdPerShare">188.48</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="-5"
      id="d48757553e2438-wk-Fact-69DC0C407FBCA2B2AB9AA8A413F63837"
      unitRef="shares">1700000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48757553e2442-wk-Fact-3C550AD5B0D2DBF9B526A8A413F284AC"
      unitRef="usdPerShare">169.24</tyl:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonvestedWeightedAverageExercisePrice>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-25436B9E1586085D037EA8A4149450E9-0-wk-Fact-41381E4EEF77C563CE16A8A413F27042">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average grant-date fair value of stock options granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;74.54&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66.52&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;55.56&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total intrinsic value of stock options exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;176,716&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;137,699&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Options granted, exercised, forfeited and expired are summarized as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average Exercise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Remaining&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Contractual Life&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(Years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Aggregate&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intrinsic Value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;83.64&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;824&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;176.26&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,113&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;44.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(50&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;134.83&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,817&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;107.91&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;432&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208.21&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(1,126&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;66.53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(31&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;158.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;129.51&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;162&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;251.58&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;96.92&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Forfeited&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;174.54&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Outstanding at December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;145.27&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;499,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Exercisable at December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,067&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;121.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;369,938&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48757553e2558-wk-Fact-A48C120CFBE0760B5319A8A414203ED7"
      unitRef="usdPerShare">74.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48757553e2577-wk-Fact-C72EFDACD5940D62CECBA8A414186735"
      unitRef="usdPerShare">66.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48757553e2596-wk-Fact-9B8AA8ECD8BA7CC8EE96A8A4141C07E7"
      unitRef="usdPerShare">55.56</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e2617-wk-Fact-10F624EF561A8ABB419BA8A4141CB977"
      unitRef="usd">155899000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e2636-wk-Fact-0E65C74B1E270A6EE794A8A4141CBC4A"
      unitRef="usd">176716000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e2655-wk-Fact-6B3D2DC7DB50E66CBB39A8A4141C4C31"
      unitRef="usd">137699000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-E0101FE0CC46990EDFF7A8A41494CA1D-0-wk-Fact-26CDDDDB85DE01EFF44BA8A413F22A49">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes share-based compensation expense related to share-based awards which is recorded in the consolidated statements of comprehensive income:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cost of software services, maintenance and subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,002&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,588&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,415&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;44,965&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,152&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,933&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total share-based compensation expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;59,967&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;52,740&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Excess tax benefit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(29,819&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(32,487&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(40,624&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net decrease (increase) in net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;30,148&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,253&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(3,276&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember"
      decimals="-3"
      id="d48757553e2831-wk-Fact-88A41E814E260E5ADC0BA8A4146039E7"
      unitRef="usd">15002000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember"
      decimals="-3"
      id="d48757553e2850-wk-Fact-1233E73A64542E5D73F5A8A414645D65"
      unitRef="usd">13588000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_tyl_CostOfSoftwareServicesMaintenanceAndSubscriptionsMember"
      decimals="-3"
      id="d48757553e2869-wk-Fact-EAE0635A78D9279D7B92A8A41464A204"
      unitRef="usd">9415000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="d48757553e2885-wk-Fact-F780FB5A1B103B8A20DAA8A41460B35D"
      unitRef="usd">44965000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="d48757553e2904-wk-Fact-BC45EC3C962324CFC8B0A8A414649124"
      unitRef="usd">39152000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="d48757553e2923-wk-Fact-CB39060102591553A02FA8A41460A648"
      unitRef="usd">27933000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e2944-wk-Fact-CDCD2A0DA42B091B81A4A8A41464769E"
      unitRef="usd">59967000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e2963-wk-Fact-9E7BED4155D19515DE19A8A414343AB1"
      unitRef="usd">52740000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e2982-wk-Fact-20EFD80AE2EF045D22DAA8A41460D9C8"
      unitRef="usd">37348000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e3003-wk-Fact-5F74D9464FFD2A9957F4A8A4146427A4"
      unitRef="usd">29819000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e3023-wk-Fact-151110F3CFFBEA247293A8A41460C4DA"
      unitRef="usd">32487000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e3043-wk-Fact-8945370E943541FB0817A8A4146008B0"
      unitRef="usd">40624000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48757553e3070-wk-Fact-1DFC8882D013211178B9A8A414601F99"
      unitRef="usd">30148000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48757553e3089-wk-Fact-42A777AEB2893D28AC2BA8A41460D206"
      unitRef="usd">20253000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48757553e3108-wk-Fact-A9603E544823F238F090A8A41464363C"
      unitRef="usd">-3276000</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      decimals="-5"
      id="d48757553e3126-wk-Fact-B143C4C86FBBFAB8E24FA8A413F2F04C"
      unitRef="usd">148700000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d48757553e3130-wk-Fact-5C6F721B25A9AB2DEF73A8A413FA6E40">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember"
      decimals="INF"
      id="d48757553e3140-wk-Fact-34AB65E872F8B1B28645A8A413F2287F"
      unitRef="number">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="FD2019Q4YTD_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember"
      decimals="INF"
      id="d48757553e3144-wk-Fact-2C68A2BF70049B335B91A8A413F6B9FE"
      unitRef="number">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember"
      decimals="INF"
      id="d48757553e3152-wk-Fact-ADEDC327D782080B4914A8A413F6A920"
      unitRef="shares">702000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="FI2019Q4_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember"
      decimals="-5"
      id="d48757553e3156-wk-Fact-3B5F7FEBD250F5F2F436A8A413EEA0FD"
      unitRef="shares">2000000.0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-889E4A73FFD66BE2AE50A8A41494690F-0-wk-Fact-2619A112229BBB59E1A6A8A4145C5E50">&lt;span style="font-family:inherit;font-size:10pt;"&gt;EARNINGS PER SHARE&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic earnings and diluted earnings per share data were computed as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Numerator for basic and diluted earnings per share:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,527&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;147,462&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;169,571&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Denominator:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted-average basic common shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,445&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,273&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Assumed conversion of dilutive securities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock options&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,465&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,678&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,973&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-indent:9px;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Denominator for diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:9px;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160; - Adjusted weighted-average shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,105&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,123&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,246&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Earnings per common share:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Basic&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.84&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Diluted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.65&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.68&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Share-based awards representing the right to purchase common stock of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;633,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;888,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,343,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt; were not included in the computation of diluted earnings per share because their inclusion would have had an anti-dilutive effect.</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2645B9FF0067E3620863A8A41494EAD9-0-wk-Fact-CF4CAA00886501C0F6E2A8A414504F08">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic earnings and diluted earnings per share data were computed as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:65%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Numerator for basic and diluted earnings per share:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;146,527&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;147,462&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;169,571&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Denominator:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted-average basic common shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,445&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,273&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Assumed conversion of dilutive securities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Stock options&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,465&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,678&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,973&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-indent:9px;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Denominator for diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:9px;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160; - Adjusted weighted-average shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,105&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,123&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,246&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Earnings per common share:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Basic&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.84&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Diluted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.65&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3.68&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48754727e807-wk-Fact-60A206CDAA5E8A33F2A9A8A414445CD0"
      unitRef="usd">146527000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48754727e826-wk-Fact-83D597512074D1ADC051A8A4143010C1"
      unitRef="usd">147462000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48754727e845-wk-Fact-7A65EF9B2AE52753276BA8A413FE228C"
      unitRef="usd">169571000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48754727e920-wk-Fact-DD30DEE5C07EA0E4A2EFA8A41460DCD9"
      unitRef="shares">38640000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48754727e939-wk-Fact-88B421765E1C9386161CA8A41450AAFA"
      unitRef="shares">38445000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48754727e958-wk-Fact-4A01CDA05E9AFE785716A8A4145432F2"
      unitRef="shares">37273000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48754727e1041-wk-Fact-89C0AC89CB9EDDCFA699A8A4145010FF"
      unitRef="shares">1465000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48754727e1060-wk-Fact-F9C1EC459D6DBF6A9666A8A41450AE6A"
      unitRef="shares">1678000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48754727e1079-wk-Fact-2BD0F6A69D9E52FDA3E3A8A4145CCD39"
      unitRef="shares">1973000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48754727e1103-wk-Fact-411DBC4C77F02D5552B3A8A4145CF79F"
      unitRef="shares">40105000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48754727e1122-wk-Fact-90A2A98B2905A1D75828A8A41450848C"
      unitRef="shares">40123000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48754727e1141-wk-Fact-1B8EBB28A56CC268F7D8A8A41450219D"
      unitRef="shares">39246000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48754727e1226-wk-Fact-EE9A2901D384EFA28CDDA8A413F60C40"
      unitRef="usdPerShare">3.79</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48754727e1245-wk-Fact-06C0F412053A2394EE5EA8A413EEE587"
      unitRef="usdPerShare">3.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48754727e1264-wk-Fact-074963B3383E675F2128A8A4143C4090"
      unitRef="usdPerShare">4.55</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d48754727e1286-wk-Fact-E90DD5B91EA2DBB2BA7BA8A413FA5F46"
      unitRef="usdPerShare">3.65</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d48754727e1305-wk-Fact-0E479A1F4C6D148993EBA8A414504516"
      unitRef="usdPerShare">3.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d48754727e1324-wk-Fact-EDCED98D78B4DC7353B5A8A4145C170F"
      unitRef="usdPerShare">4.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48754727e1339-wk-Fact-D5F44E95E6F24065F82AA8A414588C41"
      unitRef="shares">633000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48754727e1347-wk-Fact-C6D909C639D0C8C8F321A8A41458898F"
      unitRef="shares">888000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48754727e1355-wk-Fact-FD7407002FDBA2E8BB4CA8A41458FE53"
      unitRef="shares">1343000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7B5EB9D6E6D0C2B2A40CCB50775D3B94-0-wk-Fact-35E1B378A425CFE765B8CB50F98265C6">LEASES&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;eight years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;Some of these leases include options to extend for up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10 years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We had&#160;no finance leases and no related party lease agreements as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Operating lease costs were approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$9.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$7.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:26%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:52%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:18%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Lease Costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Financial Statement Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,379&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Short-term lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Variable lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,922&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:75%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, short-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,387&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, long-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Cash Flows&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,267&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,466&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,684&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,246&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,960&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,923&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,478&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,042&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease payments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,333&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Less: Interest&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,994&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,146&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,976&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,925&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,132&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,337&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Rental Income from third parties&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We own office buildings in Bangor, Falmouth and Yarmouth, Maine; Lubbock and Plano, Texas; Troy, Michigan; Latham, New York; and Moraine, Ohio. We lease space in some of these buildings to third-party tenants. The property we lease to others under operating leases consists primarily of specific facilities where one tenant obtains substantially all of the economic benefit from the asset and has the right to direct the use of the asset. These non-cancelable leases expire between &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2025&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, some of which have options to extend the lease for up to&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We determine if an arrangement is a lease at inception. None of our leases allow the lessee to purchase the leased asset.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Rental income from third-party tenants was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Rental income is included in Hardware and other revenue on the consolidated statements of comprehensive income. Future minimum operating rental income based on contractual agreements is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:66%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:31%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,341&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,372&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,432&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,462&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;857&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,866&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had no additional significant operating or finance leases that had not yet commenced.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeasesOfLessorDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-1E5E70B13731870B4D8CCB4ECEFE838C-0-wk-Fact-BA07F71F85ABE3D1210FCB5018FD2E08">LEASES&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We lease office facilities for use in our operations, as well as transportation and other equipment.&#160;Most of our leases are non-cancelable operating lease agreements and they expire in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;eight years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&#160;Some of these leases include options to extend for up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10 years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We had&#160;no finance leases and no related party lease agreements as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Operating lease costs were approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$9.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$7.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:26%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:52%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:18%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Lease Costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Financial Statement Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,379&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Short-term lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Variable lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,922&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:75%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, short-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,387&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, long-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Cash Flows&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,267&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,466&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,684&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,246&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,960&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,923&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,478&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,042&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease payments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,333&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Less: Interest&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,994&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,146&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,976&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,925&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,132&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,337&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Rental Income from third parties&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We own office buildings in Bangor, Falmouth and Yarmouth, Maine; Lubbock and Plano, Texas; Troy, Michigan; Latham, New York; and Moraine, Ohio. We lease space in some of these buildings to third-party tenants. The property we lease to others under operating leases consists primarily of specific facilities where one tenant obtains substantially all of the economic benefit from the asset and has the right to direct the use of the asset. These non-cancelable leases expire between &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2025&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, some of which have options to extend the lease for up to&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. We determine if an arrangement is a lease at inception. None of our leases allow the lessee to purchase the leased asset.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Rental income from third-party tenants was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Rental income is included in Hardware and other revenue on the consolidated statements of comprehensive income. Future minimum operating rental income based on contractual agreements is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:66%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:31%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,341&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,372&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,432&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,462&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;857&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,866&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had no additional significant operating or finance leases that had not yet commenced.&lt;/span&gt;&lt;/div&gt;</us-gaap:OperatingLeasesOfLessorDisclosureTextBlock>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="FI2019Q4_srt_RangeAxis_srt_MinimumMember"
      id="d48759384e582-wk-Fact-FFB1D4229DF17A53C5C9CB6AF7557CD9">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="FI2019Q4_srt_RangeAxis_srt_MaximumMember"
      id="d48759384e586-wk-Fact-640069F5D0FAB0956A1ACB6B323D2B3D">P8Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="FI2019Q4"
      id="d48759384e590-wk-Fact-41AE5E21422060008978CB657A905347">P10Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48759384e598-wk-Fact-7CBD9F18DED11402F7BACB6677F66C52"
      unitRef="usd">9900000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48759384e607-wk-Fact-5A4A16ABBB6D74F267C4CB66BE9D80F2"
      unitRef="usd">7400000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48759384e615-wk-Fact-B5712EA17BCF616BB8481BC086EBF255"
      unitRef="usd">6900000</us-gaap:LeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e744-wk-Fact-B743831B8192CE3D4F26CB1F977A6CC9"
      unitRef="usd">6379000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e774-wk-Fact-D8DC2D01DECFBEEEB0EACB1F981EA226"
      unitRef="usd">2269000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e809-wk-Fact-2338AED13A2D3179E728CB1F98E8432C"
      unitRef="usd">1274000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e849-wk-Fact-1FEDB0D36AB2772FF85BCB1F997EBA9C"
      unitRef="usd">9922000</us-gaap:LeaseCost>
    <tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-79E47D7BB5445A1571A9CB5484E457FD-0-wk-Fact-E944F99AF9795FFF47A4CB5626FBAEC0">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:75%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Assets:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, short-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,387&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases, long-term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</tyl:ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e950-wk-Fact-8DE440BE3BCA3C99E80A1113DBF6BD1F"
      unitRef="usd">18992000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e996-wk-Fact-B5B71B1D8A703078B130111525DB16D4"
      unitRef="usd">6387000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1021-wk-Fact-5D28A059EFA776F6383A1115FAEFC609"
      unitRef="usd">16822000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1051-wk-Fact-FBF5F0EC4CF295474BA2CB40E0F9670D"
      unitRef="usd">23209000</us-gaap:OperatingLeaseLiability>
    <tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-D88DCFB55D1A59700C0BCB590569750B-0-wk-Fact-AB17361C6ED2B385E268CB59540585D8">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Cash Flows&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,267&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,466&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</tyl:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-118E6995024B534EA801CB537446AFD6-0-wk-Fact-C32D56427407EE76C5A2CB5399154DB3">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental information related to leases was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:77%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Cash Flows&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;(in thousands):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Cash paid amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;Operating cash outflows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,267&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,466&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;text-decoration:underline;"&gt;Lease Term and Discount Rate:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average remaining lease term (years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Weighted average discount rate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of operating lease expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:26%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:52%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:18%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Lease Costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Financial Statement Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:Times_New_Roman;font-size:8pt;"&gt;For the year ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Operating lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,379&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Short-term lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Variable lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,922&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e1206-wk-Fact-8753BEA089903A98FBA6CB341B4ACA92"
      unitRef="usd">7267000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48759384e1283-wk-Fact-DDAA146B53B25E0E7EF7CB3442B19919"
      unitRef="usd">3466000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="FI2019Q4"
      id="d48759384e1355-wk-Fact-A3E3080176F22A1FE798CB334D5A08EA">P4Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="FI2019Q4"
      decimals="4"
      id="d48759384e1381-wk-Fact-ED9C0AA0FED9C783FF56CB347BA55C62"
      unitRef="number">0.0400</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-BF0440EEA269E9229989CB6046F9B307-0-wk-Fact-EEB370298FCB243A7D19CB6095A48DDB">&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, maturities of lease liabilities were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,684&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,246&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,960&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,923&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,478&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,042&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total lease payments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,333&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Less: Interest&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(2,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,209&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1461-wk-Fact-D8B93863DDD0B0627E7FCB40DB73E91C"
      unitRef="usd">7684000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1481-wk-Fact-D2B2A031C724158AB8C3CB40DC643CE4"
      unitRef="usd">6246000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1506-wk-Fact-1035572352D0E4B6E075CB40DD0B0A7A"
      unitRef="usd">3960000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1531-wk-Fact-D73D5E726F4A9418EAE5CB40DDB2DCF7"
      unitRef="usd">2923000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1556-wk-Fact-6CE6C7E3D2645D0F9DF9CB40DE595D34"
      unitRef="usd">2478000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1581-wk-Fact-6318D1B96A58221BD484CB40DEFFC659"
      unitRef="usd">2042000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1606-wk-Fact-31C9A196EBA28287A5C3CB40DFA6D470"
      unitRef="usd">25333000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1631-wk-Fact-FB85EC6D78F3D4F66C17CB40E04CCDA6"
      unitRef="usd">2124000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e1662-wk-Fact-FBF5F0EC4CF295474BA2CB40E0F9670D"
      unitRef="usd">23209000</us-gaap:OperatingLeaseLiability>
    <us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-BA371140F8AF418D6A05CB6262EC2308-0-wk-Fact-3A542D88F71D02705D10CB62A6C37B86">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:72%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:25%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,994&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;5,146&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,976&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,925&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,132&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,337&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1737-wk-Fact-6C4679502CB940A4D446CB47FF637ED0"
      unitRef="usd">5994000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1757-wk-Fact-55A1FF148E76F4B80297CB48000AD2E9"
      unitRef="usd">5146000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1782-wk-Fact-45B5B5CA9E2D8A98B2BCCB4800B2E3AB"
      unitRef="usd">3976000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFourYears
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1807-wk-Fact-82BDA805318805012CEACB480158258B"
      unitRef="usd">1925000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFourYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFiveYears
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1832-wk-Fact-D7BCA75CACD642DFA146CB4801FE5EAF"
      unitRef="usd">1164000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFiveYears>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDueThereafter
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1857-wk-Fact-08BCA53A821F9ED07003CB4802A542B7"
      unitRef="usd">2132000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueThereafter>
    <us-gaap:OperatingLeasesFutureMinimumPaymentsDue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48759384e1887-wk-Fact-F283DDE0E04F88295A16CB48034BB1EA"
      unitRef="usd">20337000</us-gaap:OperatingLeasesFutureMinimumPaymentsDue>
    <us-gaap:LessorOperatingLeaseRenewalTerm
      contextRef="FI2019Q4"
      id="d48759384e1913-wk-Fact-43512D1800BDD3934B46CB7027EA50A1">P5Y</us-gaap:LessorOperatingLeaseRenewalTerm>
    <us-gaap:RentalIncomeNonoperating
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48759384e1920-wk-Fact-AB45B2AF160C62BC254DCB71CBADD017"
      unitRef="usd">1100000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:RentalIncomeNonoperating
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48759384e1928-wk-Fact-138BF7A48FA6CFF940EBCB71E70693F5"
      unitRef="usd">1200000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:RentalIncomeNonoperating
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48759384e1936-wk-Fact-4BBCF521FB5736624FE11BC0F66E5CF6"
      unitRef="usd">1500000</us-gaap:RentalIncomeNonoperating>
    <us-gaap:OperatingLeaseLeaseIncomeTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-3AEA2830CFD370F8493ACB63625DD7BA-0-wk-Fact-A43AE0E7CBC2B51CA739CB639978C495">Future minimum operating rental income based on contractual agreements is as follows (in thousands):&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:66%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:31%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Year ending December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amount&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2020&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,341&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,372&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,432&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,462&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Thereafter&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;857&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,866&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:OperatingLeaseLeaseIncomeTableTextBlock>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2007-wk-Fact-917725B767D84489A774CB4A2E33C9EE"
      unitRef="usd">1341000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2027-wk-Fact-61A7A9E2A98AE96CB7D0CB4A2EDBFD0C"
      unitRef="usd">1372000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedTwoYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2052-wk-Fact-12C72959DA9088DFF25BCB4A2F88FD7D"
      unitRef="usd">1402000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedThreeYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2077-wk-Fact-84EFAE1971DCFC78C198CB4A302BEE02"
      unitRef="usd">1432000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedFourYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2102-wk-Fact-26DD46DB087C85C25CBECB4A30D06AEA"
      unitRef="usd">1462000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedFiveYears>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2127-wk-Fact-001104B03CB1CC95F66ECB4A317F406E"
      unitRef="usd">857000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedThereafter>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceived
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48759384e2157-wk-Fact-C2503DD2EBBEA224873ACB4A3224C56B"
      unitRef="usd">7866000</us-gaap:LessorOperatingLeasePaymentsToBeReceived>
    <us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-75A215494EE322BBE004A8A414945150-0-wk-Fact-66B009C9AF6839B5F821A8A41470F97A">&lt;span style="font-family:inherit;font-size:10pt;"&gt;EMPLOYEE BENEFIT PLANS&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We provide a defined contribution plan for the majority of our employees meeting minimum service requirements. Eligible employees can contribute up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of their current compensation to the plan subject to certain statutory limitations.&#160;We contribute up to a maximum of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of an employee&#x2019;s compensation to the plan.&#160;We made contributions to the plan and charged operating results &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$11.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$9.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$7.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:CompensationAndEmployeeBenefitPlansOtherThanShareBasedCompensationTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d48759484e584-wk-Fact-3F35D361DBFF291C9C45A8A4146C556C"
      unitRef="number">0.30</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      decimals="INF"
      id="d48759484e588-wk-Fact-43A92E0834159A33BD74A8A4147025D3"
      unitRef="number">0.03</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48759484e592-wk-Fact-2603580204DC997D322FA8A4146CE97D"
      unitRef="usd">11500000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48759484e600-wk-Fact-95A9F2E9964ADD9DFD85A8A414708DDA"
      unitRef="usd">9300000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48759484e609-wk-Fact-07067DFC9CBB16F1FB88A8A41470E378"
      unitRef="usd">7900000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7EC4FE868F125EBE30D9A8A4149456D3-0-wk-Fact-8DB119A3A6E5404472EDA8A413FAEED9">&lt;span style="font-family:inherit;font-size:10pt;"&gt;COMMITMENTS AND CONTINGENCIES&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other than routine litigation incidental to our business, there are &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;no&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; material legal proceedings pending to which we are party or to which any of our properties are subject.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <tyl:NumberOfLegalProceedingsThatHaveMaterialEffect
      contextRef="FI2019Q4"
      decimals="INF"
      id="d48759536e584-wk-Fact-7209FECE3CA4EBD67AB6A8A413FAC0E2"
      unitRef="legal_matter">0</tyl:NumberOfLegalProceedingsThatHaveMaterialEffect>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-CC96DA984F7FFF2CAE24A8A414947949-0-wk-Fact-A2CC91B97C06AECC7FD8A8A4143C2DDA">&lt;span style="font-family:inherit;font-size:10pt;"&gt;SEGMENT AND RELATED INFORMATION&lt;/span&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We provide integrated information management solutions and services for the public sector, with a focus on local governments.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We provide our software systems and services and appraisal services through &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;six&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; business units, which focus on the following products:&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;financial management, education and planning, regulatory and maintenance software solutions;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;courts and justice and public safety software solutions; &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;data and insights solutions;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;case management and business management solutions; and&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:75px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:51px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;appraisal and tax software solutions and property appraisal services.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-bottom:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In accordance with ASC 280-10, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Segment Reporting&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the financial management, education and planning, regulatory and maintenance software solutions unit; financial management, municipal courts, planning, regulatory and maintenance, and land and vital records management software solutions unit; courts and justice and public safety software solutions unit; the data and insights solutions unit; and case management and business management solutions unit meet the criteria for aggregation and are presented in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; reportable segment, Enterprise Software (&#x201c;ES&#x201d;).&#160;The ES segment provides public sector entities with software systems and services to meet their information technology and automation needs for mission-critical &#x201c;back-office&#x201d; functions such as: financial management and education, courts and justice, public safety, planning, regulatory and maintenance, land and vital records management, data and insights and case management and business management processes. The Appraisal and Tax (&#x201c;A&amp;amp;T&#x201d;) segment provides systems and software that automate the appraisal and assessment of real and personal property as well as property appraisal outsourcing services for local governments and taxing authorities.&#160;Property appraisal outsourcing services include: the physical inspection of commercial and residential properties; data collection and processing; computer analysis for property valuation; preparation of tax rolls; community education; and arbitration between taxpayers and the assessing jurisdiction.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;We evaluate performance based on several factors, of which the primary financial measure is business segment operating income.&#160;We define segment operating income for our business units as income before noncash amortization of intangible assets associated with their acquisition, interest expense and income taxes.&#160;Segment operating income includes intercompany transactions.&#160;The majority of intercompany transactions relate to contracts involving more than one unit and are valued based on the contractual arrangement.&#160;Segment operating income for corporate primarily consists of compensation costs for the executive management team and certain accounting and administrative staff and share-based compensation expense for the entire company.&#160;Corporate segment operating income also includes revenues and expenses related to a company-wide user conference.&#160;The accounting policies of the reportable segments are the same as those described in Note 1, &#x201c;Summary of Significant Accounting Policies.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Segment assets include net accounts receivable, prepaid expenses and other current assets and net property and equipment.&#160;Corporate assets consist of cash and investments, prepaid insurance, intangibles associated with acquisitions, capitalized software development costs, deferred income taxes and net property and equipment mainly related to unallocated information and technology assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;ES segment capital expenditures included &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for the expansion of existing buildings and purchases of buildings and land.&#160; A&amp;amp;T segment capital expenditures included &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for the expansion of existing buildings.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;92,567&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;100,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;285,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11,260&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;185,892&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,169&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;405,063&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,255&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,000,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;94,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;64,289&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11,457&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,672&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;261,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,789&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(73,829&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208,454&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,335&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,384&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,379&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,098&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;834,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,536&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,267,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,191,614&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;83,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,706&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;93,441&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;210,740&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,807&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;166,921&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;24,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,904&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;24,617&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,745&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,881&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;853,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,356&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;50,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;914&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,715&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;61,759&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;237,159&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,094&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(68,572&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,681&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,973&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;782&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,377&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,132&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;556,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;63,670&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,171,193&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,790,963&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017 &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;78,388&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,854&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,242&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;164,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,859&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;161,245&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,215&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;337,701&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,057&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;765,133&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;81,579&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;43,987&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;760&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,648&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,395&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229,001&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,788&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(51,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;197,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28,096&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,181&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,341&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;365,736&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,279&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,199,336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,611,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:84.44444444444444%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:61%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Reconciliation of reportable segment operating&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;income to the Company's consolidated totals:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208,454&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,681&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;197,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization of acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(30,642&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(22,972&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(21,686&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization of customer and trade name intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(21,445&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(16,217&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,381&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other income (expense), net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,471&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,378&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;698&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Income before income taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;159,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,870&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;163,456&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <tyl:NumberOfBusinessUnits
      contextRef="FI2019Q4"
      decimals="INF"
      id="d48768054e587-wk-Fact-8F5C1CCFF2C61EC72F0EA8A4143CD5DB"
      unitRef="business_unit">6</tyl:NumberOfBusinessUnits>
    <us-gaap:NumberOfReportableSegments
      contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="INF"
      id="d48768054e640-wk-Fact-767A65DB8037822D0D2C1BC60504C976"
      unitRef="segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-5"
      id="d48768054e654-wk-Fact-7C0E17EE8A14418BE1071BC75A7708E2"
      unitRef="usd">12600000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2018Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-5"
      id="d48768054e662-wk-Fact-07D17D2C15D019D13330A8A41438EBF2"
      unitRef="usd">2200000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:PaymentsForCapitalImprovements
      contextRef="FD2019Q4YTD_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-5"
      id="d48768054e670-wk-Fact-9618D926A7F300ACF2791BCA97D38137"
      unitRef="usd">8200000</us-gaap:PaymentsForCapitalImprovements>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-44EA332DC15DB9513BBFA8A414945963-0-wk-Fact-A627130D79519EF16B2DA8A4143C073F">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;92,567&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;100,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;285,092&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11,260&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;185,892&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,169&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;405,063&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,255&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,000,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;94,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;64,289&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;11,457&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;76,672&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;261,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,789&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(73,829&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208,454&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,335&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,384&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,379&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,098&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;834,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,536&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,267,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;2,191,614&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;83,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,706&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;93,441&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;210,740&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;9,807&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;166,921&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;24,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,904&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;24,617&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,745&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,881&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;853,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,356&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;50,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;914&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,715&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;61,759&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;237,159&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,094&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(68,572&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,681&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,973&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;782&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,377&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,132&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;556,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;63,670&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,171,193&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,790,963&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="16"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017 &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;and Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;78,388&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,854&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,242&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;164,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;7,859&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;161,245&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;19,215&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;337,701&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,057&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;765,133&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;81,579&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Depreciation and amortization expense&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;43,987&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;760&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;8,648&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;53,395&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;229,001&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,788&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(51,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;197,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Capital expenditures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;28,096&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,181&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;16,341&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;45,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Segment assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;365,736&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,279&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,199,336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,611,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e891-wk-Fact-4613EEB24E672CB1648CA8A41474549B"
      unitRef="usd">92567000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e910-wk-Fact-36078C39B70D66D2C643A8A4147C4381"
      unitRef="usd">7638000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e929-wk-Fact-6980BF62DC9CF5884819A8A41470EC53"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e949-wk-Fact-14CD609058007D3D2E3AA8A4147C12B1"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e964-wk-Fact-BD218FDF50A1004C0CAFA8A414381FBA"
      unitRef="usd">285092000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e983-wk-Fact-9C28A4BFB77E6D910FFFA8A413E1D211"
      unitRef="usd">11260000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e1002-wk-Fact-729F321784BF010111B6A8A4147CF459"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e1022-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1042-wk-Fact-FCD3C382B98F67CCFCBAA8A41478CFB5"
      unitRef="usd">185892000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1061-wk-Fact-A1AC068E3E24282F745EA8A41470322F"
      unitRef="usd">27169000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e1080-wk-Fact-088ECB477E87EDDA5BEFA8A413E18D4B"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e1100-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1120-wk-Fact-4A68B1E223026F70EFCAA8A413E1783A"
      unitRef="usd">405063000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1139-wk-Fact-95B17FD7C92A6C2273A4A8A4147C8840"
      unitRef="usd">25255000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e1158-wk-Fact-B7ACF15EAADC66949E4DA8A413E1B2E4"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e1178-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1198-wk-Fact-738B245F0EEB3D477E3DA8A413E15F29"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1217-wk-Fact-E83444E74D97D20DF77DA8A4147C7532"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e1236-wk-Fact-8EE2E648549BEBEA6273A8A41438F04E"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e1256-wk-Fact-0E5534002B43682C9563A8A4144C2123"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1276-wk-Fact-2C7C87356588BED3EAF9A8A413E53FA6"
      unitRef="usd">16735000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1295-wk-Fact-6BBC631DE28AC03779A3A8A41478683B"
      unitRef="usd">21000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e1314-wk-Fact-F74A680FF339D20F5C18A8A4147C479B"
      unitRef="usd">6256000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e1334-wk-Fact-F2ADE67C5C61DE8CF087A8A41450BC9A"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1354-wk-Fact-DB24A2418A8046BCA118A8A414784CC8"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1373-wk-Fact-8D5EE1986C9D8B1C1BC9A8A4147C3AE1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48768054e1392-wk-Fact-827C001CE58629B02EC1A8A414741DA4"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1438-wk-Fact-C26FA4F9A36317FC454CA8A413EE3614"
      unitRef="usd">1000845000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1457-wk-Fact-6AFC41ABBE0F4CA0F8BFA8A4147C8366"
      unitRef="usd">94822000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48768054e1475-wk-Fact-E0DCC0403C46DBB23452A8A414380E16"
      unitRef="usd">-9240000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48768054e1495-wk-Fact-864F481B04E356A536C8A8A41464106D"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1510-wk-Fact-3D0B89C699B13639B1A3A8A413E1229A"
      unitRef="usd">64289000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1529-wk-Fact-D266E60BFAF2E516340CA8A41438BCDB"
      unitRef="usd">926000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e1548-wk-Fact-8D73FB01082B35C4E926A8A414702F91"
      unitRef="usd">11457000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48768054e1568-wk-Fact-5069B9CC264DD2E934F7A8A413FA6FB3"
      unitRef="usd">76672000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1589-wk-Fact-F16A6D6B86318872AE0BA8A413E18707"
      unitRef="usd">261494000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1608-wk-Fact-712D5188C3637A16060AA8A4143CF03A"
      unitRef="usd">20789000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e1627-wk-Fact-46643788B2EF9E8F44B4A8A4147039B5"
      unitRef="usd">-73829000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e1648-wk-Fact-AE0FE7079521D16D3E8AA8A414744152"
      unitRef="usd">208454000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1668-wk-Fact-AE3DD72AE1FB557B8AB3A8A4147C9A27"
      unitRef="usd">19335000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1687-wk-Fact-15CBE248B530DBD11012A8A41478A5FD"
      unitRef="usd">8384000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e1706-wk-Fact-F37C97A6A8A9F8618C5DA8A4147C0249"
      unitRef="usd">10379000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48768054e1726-wk-Fact-F7D647A331EFB27D5087A8A4147C3BC9"
      unitRef="usd">38098000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e1751-wk-Fact-AB622BD5C745B732BA11A8A4143835B8"
      unitRef="usd">834010000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e1770-wk-Fact-1EDB3CD4EE3872CEDE4FA8A4147C8DED"
      unitRef="usd">90536000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e1789-wk-Fact-A0A16CB690454AC8E345A8A413EA4AE9"
      unitRef="usd">1267068000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48768054e1809-wk-Fact-7BC0663EBF709B61711AA8A4140A8042"
      unitRef="usd">2191614000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2023-wk-Fact-D0BAE48D674D014444F4A8A413F2A341"
      unitRef="usd">83735000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2042-wk-Fact-F93965F58341BCAB7561A8A413F63B1D"
      unitRef="usd">9706000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e2061-wk-Fact-19FB30B5554401E9DDF0A8A413FACE03"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e2081-wk-Fact-D87D651D4B7AEDDCA6AEA8A413E10FDB"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2096-wk-Fact-87B6B743F05FCB56CBAEA8A413FEA8FA"
      unitRef="usd">210740000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2115-wk-Fact-AAA92693A3B48B42195AA8A413EECB7F"
      unitRef="usd">9807000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e2134-wk-Fact-3A7629B2A0B596602574A8A413FEB897"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e2154-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2174-wk-Fact-848A1C4E967CC337C681A8A413FA04F2"
      unitRef="usd">166921000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2193-wk-Fact-460A252483D9558378AAA8A413E5E73E"
      unitRef="usd">24348000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e2212-wk-Fact-36C1B6B6631FA24A12A8A8A413EA2DE8"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e2232-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2252-wk-Fact-87B13202948C07B6BEF9A8A413F2FEAF"
      unitRef="usd">359904000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2271-wk-Fact-A3FD9DC5C05AB3C9E067A8A413F26894"
      unitRef="usd">24617000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e2290-wk-Fact-C1541B39A465D46016BDA8A413FA3BEC"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e2310-wk-Fact-76F25FED2DABCB1C31E1A8A414705457"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2330-wk-Fact-6AB31E200A833F4109AAA8A4140ADF88"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2349-wk-Fact-86EC3A01C377EA3DC3C7A8A413F67441"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e2368-wk-Fact-950FFBD190EC58E77B44A8A413FA3439"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e2388-wk-Fact-CD0030531C7695000F44A8A413FA941D"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2408-wk-Fact-37A7A289E1EFBBF5D773A8A413FE91AA"
      unitRef="usd">18745000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2427-wk-Fact-4BF4D9C4F7445C7736A2A8A413FE6613"
      unitRef="usd">32000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e2446-wk-Fact-77EED85C328E4A935173A8A413E13735"
      unitRef="usd">4881000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e2466-wk-Fact-B1EB65257A76BD031A77A8A41402B795"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2486-wk-Fact-A7AAA5D60B10837B8134A8A4140A17A1"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2505-wk-Fact-6395195FCA1CA8134B69A8A413FA6E8C"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48768054e2524-wk-Fact-AB454F78E238A7E98029A8A413EAD41D"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2570-wk-Fact-1B146729CE3E3D587601A8A413F6D416"
      unitRef="usd">853200000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2589-wk-Fact-A471588B051B8F271550A8A413FA6F3E"
      unitRef="usd">90356000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48768054e2607-wk-Fact-4739B4FAA25F6310C43DA8A413E1C588"
      unitRef="usd">-8274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48768054e2627-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2642-wk-Fact-DE755556C7BCA01C282DA8A413FA6F95"
      unitRef="usd">50130000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2661-wk-Fact-A379B77354085AF6CCC6A8A413FA1B22"
      unitRef="usd">914000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e2680-wk-Fact-617C5BE23C0C8E783A61A8A4140A162C"
      unitRef="usd">10715000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48768054e2700-wk-Fact-2C4E3579DF72EB46466AA8A41430355B"
      unitRef="usd">61759000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2721-wk-Fact-F3CC3129FF03E93D9F37A8A413F6B891"
      unitRef="usd">237159000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2740-wk-Fact-A378932A4895C289E99CA8A413EE527B"
      unitRef="usd">23094000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e2759-wk-Fact-CE271CD369C71A1E087AA8A413EE9838"
      unitRef="usd">-68572000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e2780-wk-Fact-639CE2CF729D97BB0889A8A41474C614"
      unitRef="usd">191681000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2800-wk-Fact-412B0982FB0E8E324ED2A8A4140600D3"
      unitRef="usd">13973000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2819-wk-Fact-C8C9B163973461B92B39A8A413EA4127"
      unitRef="usd">782000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e2838-wk-Fact-FF5107BA69C73A180B7BA8A413FA3679"
      unitRef="usd">10377000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48768054e2858-wk-Fact-C8BF207391948D7C2AEAA8A413F63C9B"
      unitRef="usd">25132000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e2883-wk-Fact-CD2328FF49BE7C152E65A8A413F6C5D2"
      unitRef="usd">556100000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e2902-wk-Fact-AB81E40E585E918805DCA8A413FADFB6"
      unitRef="usd">63670000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e2921-wk-Fact-7EC59A11542B9E9E3081A8A413FAFECD"
      unitRef="usd">1171193000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48768054e2941-wk-Fact-EE621A7A1F9B03681BD2A8A4146CCC2A"
      unitRef="usd">1790963000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3155-wk-Fact-A3545081381374412C97A8A413FE14AF"
      unitRef="usd">78388000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3174-wk-Fact-51CB24F78832F025834AA8A4140A614A"
      unitRef="usd">7854000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e3193-wk-Fact-60697AE5609CA2DF0E5AA8A413FADCF6"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48768054e3213-wk-Fact-E68176EC7D902A06108FA8A413FEB50F"
      unitRef="usd">86242000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3228-wk-Fact-658DB6A3865EF28DF600A8A414063A26"
      unitRef="usd">164317000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3247-wk-Fact-8279B218FBFDF3C77183A8A4140622DF"
      unitRef="usd">7859000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e3266-wk-Fact-7D4D1D4D2212C32A640BA8A4140A50B7"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48768054e3286-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B"
      unitRef="usd">172176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3306-wk-Fact-C0FEB64A64494F6B01A2A8A413FEE6C5"
      unitRef="usd">161245000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3325-wk-Fact-EC41D558E541192B07CBA8A4140A69DC"
      unitRef="usd">19215000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e3344-wk-Fact-6210F6BB693A41F82FA2A8A4140A1C97"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48768054e3364-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE"
      unitRef="usd">180460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3384-wk-Fact-C59AEB81181010563342A8A414064C02"
      unitRef="usd">337701000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3403-wk-Fact-4A6091793E3D80ACC2D5A8A41402A243"
      unitRef="usd">21618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e3422-wk-Fact-ED1F40FFBD8F23C1C40CA8A41406243D"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48768054e3442-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA"
      unitRef="usd">359319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3462-wk-Fact-6E4588E2E7805239553CA8A4140AE286"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3481-wk-Fact-A86B23765EBBDEF10E6DA8A41406B99A"
      unitRef="usd">25023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e3500-wk-Fact-3FC49C09847AE2BADD05A8A4140A77BE"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48768054e3520-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8"
      unitRef="usd">25023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3540-wk-Fact-D5BCCB23AF26CCD585FFA8A4140A3D63"
      unitRef="usd">13057000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3559-wk-Fact-3F9DEF72680333626B51A8A41406F891"
      unitRef="usd">10000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e3578-wk-Fact-87E035BF9A7B48DF4580A8A4140667C2"
      unitRef="usd">4612000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_HardwareandOtherMember"
      decimals="-3"
      id="d48768054e3598-wk-Fact-894E1C2079EDB6068C09A8A413EEC339"
      unitRef="usd">17679000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3618-wk-Fact-8F95285CE4FA7C926388A8A414067511"
      unitRef="usd">-10425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3637-wk-Fact-DD2059B094EBCF2FF3C2A8A41402A163"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48768054e3656-wk-Fact-9151A3AEB604C1140F5FA8A414069429"
      unitRef="usd">-10425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3702-wk-Fact-80CD0A31757594F83E70A8A41406AB8F"
      unitRef="usd">765133000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3721-wk-Fact-224701AFC1BA77577994A8A41406FCC9"
      unitRef="usd">81579000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48768054e3739-wk-Fact-F848E53917D07C81857FA8A414025134"
      unitRef="usd">-5813000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48768054e3759-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3"
      unitRef="usd">840899000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3774-wk-Fact-C1958EC7FCCFAC1D88CBA8A4140A683F"
      unitRef="usd">43987000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3793-wk-Fact-922A838C82B1F68C8294A8A41406E934"
      unitRef="usd">760000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e3812-wk-Fact-F04BA375FFB564EF9E5BA8A41406ECE7"
      unitRef="usd">8648000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48768054e3832-wk-Fact-5869AE5BE9721B78EF21A8A413F6174D"
      unitRef="usd">53395000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3853-wk-Fact-C81066D86DE97963BE76A8A413FE990F"
      unitRef="usd">229001000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3872-wk-Fact-B4ECE1981D64E72DDA1AA8A4140A9D6F"
      unitRef="usd">20788000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e3891-wk-Fact-C138122B1A9A7071D42CA8A414063C0A"
      unitRef="usd">-51964000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e3912-wk-Fact-3CAD8F2B34A6A8D434DEA8A414784512"
      unitRef="usd">197825000</us-gaap:OperatingIncomeLoss>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e3932-wk-Fact-FC5B4C51B030787CBDC9A8A413FEB613"
      unitRef="usd">28096000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e3951-wk-Fact-3AD3CD420FBF82803985A8A4140A649F"
      unitRef="usd">1181000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e3970-wk-Fact-D9B297D4405A90948FDDA8A4140AD51E"
      unitRef="usd">16341000</tyl:SegmentReportingInformationCapitalExpenditures>
    <tyl:SegmentReportingInformationCapitalExpenditures
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48768054e3990-wk-Fact-B6F5100163A9B9183D59A8A413FEB0A5"
      unitRef="usd">45618000</tyl:SegmentReportingInformationCapitalExpenditures>
    <us-gaap:Assets
      contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48768054e4015-wk-Fact-96A4B8B26E51EF86FB57A8A414063EE8"
      unitRef="usd">365736000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48768054e4034-wk-Fact-67F42AD4589EE927B870A8A4140A0A80"
      unitRef="usd">46279000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2017Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e4053-wk-Fact-6BCE9E87C41F173EC9E1A8A41402D291"
      unitRef="usd">1199336000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2017Q4"
      decimals="-3"
      id="d48768054e4073-wk-Fact-5B267DAB7CAE04C9CD96A8A414069F10"
      unitRef="usd">1611351000</us-gaap:Assets>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-BF3C71F94B003420AED6A8A41494A050-0-wk-Fact-993C9B32ACB7760E3D02A8A4143C6921">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:84.44444444444444%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:61%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Reconciliation of reportable segment operating&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Years Ended December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;income to the Company's consolidated totals:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total segment operating income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;208,454&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,681&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;197,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization of acquired software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(30,642&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(22,972&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(21,686&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Amortization of customer and trade name intangibles&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(21,445&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(16,217&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,381&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Other income (expense), net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,471&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,378&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;698&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Income before income taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;159,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;155,870&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;163,456&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e4261-wk-Fact-AE0FE7079521D16D3E8AA8A414744152"
      unitRef="usd">208454000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e4280-wk-Fact-639CE2CF729D97BB0889A8A41474C614"
      unitRef="usd">191681000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_OperatingSegmentsAndCorporateNonSegmentMember"
      decimals="-3"
      id="d48768054e4300-wk-Fact-3CAD8F2B34A6A8D434DEA8A414784512"
      unitRef="usd">197825000</us-gaap:OperatingIncomeLoss>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4320-wk-Fact-C4999192AB95355E78EDA8A414741113"
      unitRef="usd">30642000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4340-wk-Fact-F6EFBB21269C5C1410FFA8A414789D2F"
      unitRef="usd">22972000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4360-wk-Fact-09E8F75EE2FC10EFFA3BA8A414745A72"
      unitRef="usd">21686000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4387-wk-Fact-0CE972E5DA38F8F104DAA8A41478F863"
      unitRef="usd">21445000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4407-wk-Fact-7BA79D99365F0CEBFA3AA8A414780F6D"
      unitRef="usd">16217000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4427-wk-Fact-42E346EED0F124B72A00A8A414744C0D"
      unitRef="usd">13381000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4454-wk-Fact-D5B901997E8E2B1FE3C0A8A414780455"
      unitRef="usd">3471000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4473-wk-Fact-D70191AE767D54603980A8A414789076"
      unitRef="usd">3378000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember"
      decimals="-3"
      id="d48768054e4492-wk-Fact-04DB94C9DEE64051342AA8A41478D08C"
      unitRef="usd">698000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48768054e4523-wk-Fact-AAECBAE1D97EC9A3A19DA8A41402C8CC"
      unitRef="usd">159838000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48768054e4542-wk-Fact-0639764666086D738A60A8A41406E4E7"
      unitRef="usd">155870000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48768054e4561-wk-Fact-8A85652EFFEF7972B095A8A413FAC43E"
      unitRef="usd">163456000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-D256B9CDD2B773A8622CA8A4149414AC-0-wk-Fact-A55E16F2811868EB2AF6A8A41440C17C">&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;DISAGGREGATION OF REVENUE&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The tables below show disaggregation of revenue into categories that reflect how economic factors affect the nature, amount, timing, and uncertainty of revenue and cash flows.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Timing of Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Timing of revenue recognition by revenue category during the period is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;84,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,305&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;100,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;107,912&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;978,515&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,188&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,253&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;93,441&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;98,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;836,436&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;69,167&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,075&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,242&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;754,053&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Recurring Revenue &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The majority of our revenue is comprised of recurring revenues from maintenance and subscriptions. Virtually all of our on-premises software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts. The contract terms for subscription arrangements range from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;one&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years but are typically contracted for initial periods of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Non-recurring revenues are derived from all other revenue categories.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Recurring revenues and non-recurring revenues recognized during the period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:56%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;690,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;36,514&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;726,670&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;295,193&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;58,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,757&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,000,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;94,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:56%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;570,645&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;34,424&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;605,069&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;269,400&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;55,932&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,881&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;330,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;853,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,356&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:55%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;502,018&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;29,477&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;531,495&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;252,690&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;52,102&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;309,404&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;765,133&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;81,579&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred revenue, including long-term, by segment is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:52%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;386,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;327,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,210&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,018&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,369&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,397&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:normal;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;412,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;350,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Changes in total deferred revenue, including long-term, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:76%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at beginning of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;350,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferral of revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;993,109&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recognition of deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(931,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at end of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;412,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Transaction Price Allocated to the Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The aggregate amount of transaction price allocated to the remaining performance obligations represents contracted revenue that has not yet been recognized ("Backlog"), which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. Backlog as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.46 billion&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, of which we expect to recognize approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;49%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as revenue over the next &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; months and the remainder thereafter.&lt;/span&gt;&lt;/div&gt;DEFERRED COMMISSIONS&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized commensurate with the recognition of associated revenue over a period of benefit that we have determined to be &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;three&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;seven years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Deferred commissions were&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$29.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, as of December&#160;31, 2019, and 2018 respectively. Amortization expense was&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$17.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$15.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$11.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for the&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;twelve&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; months ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. There were no indicators of impairment in relation to the costs capitalized for the periods presented. Deferred commissions have been included with prepaid expenses in the accompanying consolidated balance sheets. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of comprehensive income.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-43E79F9EA1CCA5BBB8FEA8A41494CAE1-0-wk-Fact-9A93AD62FF7D21DCA233A8A4142426C5">&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Timing of revenue recognition by revenue category during the period is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;84,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,305&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;100,205&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;296,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;213,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;430,318&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,479&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,012&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;107,912&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;978,515&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;75,188&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;18,253&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;93,441&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;220,547&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;191,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;384,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;21,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;98,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;836,436&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="13"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred at a point in time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Products and services transferred over time&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software licenses and royalties&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;69,167&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,075&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,242&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Subscriptions&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;172,176&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;180,460&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Maintenance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,319&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal services&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,023&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Hardware and other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;17,679&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;86,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;754,053&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Recurring revenues and non-recurring revenues recognized during the period are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:56%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;690,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;36,514&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;726,670&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;295,193&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;58,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;6,256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;359,757&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(15,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,000,845&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;94,822&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(9,240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,086,427&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:56%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;570,645&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;34,424&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;605,069&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;269,400&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;55,932&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,881&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;330,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(13,155&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;853,200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;90,356&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(8,274&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;935,282&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:55%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;For the year ended December&#160;31, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;502,018&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;29,477&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;531,495&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Non-recurring revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;252,690&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;52,102&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;4,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;309,404&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Intercompany&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(10,425&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Total revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;765,133&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;81,579&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(5,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;840,899&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e764-wk-Fact-791ACBA45CEBF7FAC380A8A414645101"
      unitRef="usd">84900000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e783-wk-Fact-22864418C79C25C89335A8A4145075C8"
      unitRef="usd">15305000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48767212e803-wk-Fact-14CD609058007D3D2E3AA8A4147C12B1"
      unitRef="usd">100205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e823-wk-Fact-166CC4156055C6ABC96DA8A4145CEEC1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e842-wk-Fact-3F6BDD9C4FA575C74AA8A8A414600F09"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48767212e861-wk-Fact-157B4D61A78FCD367AF6A8A4145C4E25"
      unitRef="usd">296352000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e887-wk-Fact-D9CC6045097FA39DF840A8A414503109"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e906-wk-Fact-EEEE6C71CE604392EF68A8A4146076B5"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48767212e925-wk-Fact-D20025A802E3AEC6D6EAA8A413FE32A9"
      unitRef="usd">213061000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e951-wk-Fact-C3C4BAEB2E211CC2D535A8A41450FE01"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e970-wk-Fact-DD0E5C07A952DADABE24A8A4145C2D5F"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48767212e989-wk-Fact-1BB38E65156B7D94D07EA8A413FA8B35"
      unitRef="usd">430318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1015-wk-Fact-D220CA742E0F83C9F1AEA8A4145C222B"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1034-wk-Fact-91243D3B97BEBCA7AB82A8A4145C0FE5"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48767212e1053-wk-Fact-0E5534002B43682C9563A8A4144C2123"
      unitRef="usd">23479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1079-wk-Fact-117156C1937D472A0C78A8A4145C669F"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1098-wk-Fact-3170A29FFE45AE3F82BFA8A41460C895"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember"
      decimals="-3"
      id="d48767212e1117-wk-Fact-5D6E01731C5FD75D984EA8A4145C2857"
      unitRef="usd">23012000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1148-wk-Fact-17B1B0CDFDC512C76B34A8A4145CB91A"
      unitRef="usd">107912000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1167-wk-Fact-FC750E7F018EE421FDD2A8A4145C8014"
      unitRef="usd">978515000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48767212e1187-wk-Fact-864F481B04E356A536C8A8A41464106D"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1367-wk-Fact-C62CA3B452B7E50D1C30A8A41440505A"
      unitRef="usd">75188000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1386-wk-Fact-45F917C71585BC549C99A8A41440E045"
      unitRef="usd">18253000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48767212e1406-wk-Fact-D87D651D4B7AEDDCA6AEA8A413E10FDB"
      unitRef="usd">93441000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1426-wk-Fact-4EBCE5763D889E35C4C1A8A4143C7FAF"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1445-wk-Fact-0D771F47F0494235E58CA8A4144402A1"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48767212e1464-wk-Fact-7B5216EAB85C57DA7ACBA8A413E509CC"
      unitRef="usd">220547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1490-wk-Fact-8FE35FA988B637C43516A8A4144076EB"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1509-wk-Fact-3C84173CA1D2C20A5B4DA8A4143C208E"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48767212e1528-wk-Fact-AAF508653772CA2485C8A8A4142CFBA4"
      unitRef="usd">191269000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1554-wk-Fact-2A18C6C211AD61718CC2A8A4143CA035"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1573-wk-Fact-4AC30DAB13BBA692A0ECA8A41444FF1A"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48767212e1592-wk-Fact-76F25FED2DABCB1C31E1A8A414705457"
      unitRef="usd">384521000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1618-wk-Fact-724FB0B1012218EDB276A8A414441CE6"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1637-wk-Fact-430E9CF80B114487B624A8A41440DAE3"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48767212e1656-wk-Fact-CD0030531C7695000F44A8A413FA941D"
      unitRef="usd">21846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1682-wk-Fact-94E35CE974811EA80D5DA8A41440077A"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1701-wk-Fact-C1051A63255FF7AEA40CA8A41444CB28"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember"
      decimals="-3"
      id="d48767212e1720-wk-Fact-98B83F48A0FFFCB5E7FEA8A414409158"
      unitRef="usd">23658000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1751-wk-Fact-384143C0D01E90C98609A8A4144097B1"
      unitRef="usd">98846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1770-wk-Fact-5E7C712E264A488924C1A8A4143C6418"
      unitRef="usd">836436000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48767212e1790-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e1972-wk-Fact-D4789365113C80B33D8F1BD754A50FF0"
      unitRef="usd">69167000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e1991-wk-Fact-ACD7C46AB478BE0358FD1BD759708544"
      unitRef="usd">17075000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_LicenseMember"
      decimals="-3"
      id="d48767212e2011-wk-Fact-E68176EC7D902A06108FA8A413FEB50F"
      unitRef="usd">86242000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2031-wk-Fact-B275B0F2AFF816237A101BD760074026"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2050-wk-Fact-174787B075213A2DA32C1BD7651DCB41"
      unitRef="usd">172176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_SubscriptionAndCirculationMember"
      decimals="-3"
      id="d48767212e2069-wk-Fact-55D4D95FF3A5E6BB62DCA8A413E1A49B"
      unitRef="usd">172176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2095-wk-Fact-91C56F8F63D94970A33F1BD76B3E7083"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2114-wk-Fact-3E6B2FE9A2BDE9A094EA1BD77011618C"
      unitRef="usd">180460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_TechnologyServiceMember"
      decimals="-3"
      id="d48767212e2133-wk-Fact-8763C106C191B1E2C590A8A4144CFFEE"
      unitRef="usd">180460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2159-wk-Fact-B0A3E7092896890728011BD77691127A"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2178-wk-Fact-142F01C84608536D74581BD77AF19DD2"
      unitRef="usd">359319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_MaintenanceMember"
      decimals="-3"
      id="d48767212e2197-wk-Fact-2291776F3DE2FD0378CDA8A4142C45CA"
      unitRef="usd">359319000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2223-wk-Fact-0361CABF023BA0FD50CB1BD780B81E6A"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2242-wk-Fact-61CB17E8845776E49FED1BD784F9CB69"
      unitRef="usd">25023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_tyl_AppraisalServicesMember"
      decimals="-3"
      id="d48767212e2261-wk-Fact-14DF273DD536D5A7CD70A8A4145069F8"
      unitRef="usd">25023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2287-wk-Fact-1B5270F02B1F3D5694921BD78A5F5669"
      unitRef="usd">17679000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2306-wk-Fact-DAD196AF803C2A747A901BD78EAFCC09"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ProductOrServiceAxis_us-gaap_ProductMember"
      decimals="-3"
      id="d48767212e2325-wk-Fact-DDCF6362265CED3A4F191BD79380B67C"
      unitRef="usd">17679000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredAtPointInTimeMember"
      decimals="-3"
      id="d48767212e2356-wk-Fact-03376437EF12159FBF191BD795852A5D"
      unitRef="usd">86846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_us-gaap_TimingOfTransferOfGoodOrServiceAxis_us-gaap_TransferredOverTimeMember"
      decimals="-3"
      id="d48767212e2375-wk-Fact-758EF26D9C52DBB3F5541BD799FF43D7"
      unitRef="usd">754053000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48767212e2395-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3"
      unitRef="usd">840899000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tyl:RevenueFromContractWithCustomerContractTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48767212e2413-wk-Fact-775AF28A517220681EE1A8A414241DAF">P10Y</tyl:RevenueFromContractWithCustomerContractTerm>
    <tyl:RevenueFromContractWithCustomerTypicalContractTerm
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48767212e2421-wk-Fact-A835AB9F731EB6484225A8A414388B35">P5Y</tyl:RevenueFromContractWithCustomerTypicalContractTerm>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e2564-wk-Fact-30911EA7AA6AEAB0520AA8A414686F4C"
      unitRef="usd">690156000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e2583-wk-Fact-B6EEB3226981F449D22BA8A41464C120"
      unitRef="usd">36514000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e2603-wk-Fact-9D198931E7E028B6EF08A8A4146885F6"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e2622-wk-Fact-FD666F52F398B73CE93EA8A4146888C1"
      unitRef="usd">726670000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e2642-wk-Fact-A1E2273127F37935D65BA8A41464082F"
      unitRef="usd">295193000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e2661-wk-Fact-8B6237241902066AE3E5A8A41464EE92"
      unitRef="usd">58308000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e2680-wk-Fact-4830722AE0DBA4A78B8CA8A414641880"
      unitRef="usd">6256000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e2700-wk-Fact-D2844D0178D253609A89A8A414643FEA"
      unitRef="usd">359757000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e2725-wk-Fact-DB24A2418A8046BCA118A8A414784CC8"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e2744-wk-Fact-8D5EE1986C9D8B1C1BC9A8A4147C3AE1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48767212e2763-wk-Fact-827C001CE58629B02EC1A8A414741DA4"
      unitRef="usd">-15496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e2814-wk-Fact-C26FA4F9A36317FC454CA8A413EE3614"
      unitRef="usd">1000845000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e2833-wk-Fact-6AFC41ABBE0F4CA0F8BFA8A4147C8366"
      unitRef="usd">94822000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48767212e2853-wk-Fact-E0DCC0403C46DBB23452A8A414380E16"
      unitRef="usd">-9240000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48767212e2873-wk-Fact-864F481B04E356A536C8A8A41464106D"
      unitRef="usd">1086427000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3014-wk-Fact-03C3C0935ABD73D77EF3A8A4140A7271"
      unitRef="usd">570645000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3033-wk-Fact-0B86B726E8FCF2079010A8A414060297"
      unitRef="usd">34424000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e3053-wk-Fact-A1C3977165F1213C199FA8A4140E50DC"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e3072-wk-Fact-54C5E85EC20094A53E21A8A4140AAF3E"
      unitRef="usd">605069000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3092-wk-Fact-2E19711ABB03CBDB7C04A8A4140E015A"
      unitRef="usd">269400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3111-wk-Fact-FC1B4432DE4C1713E874A8A4140AE7A2"
      unitRef="usd">55932000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e3130-wk-Fact-EC9122DE14BD14C48539A8A4140A7C35"
      unitRef="usd">4881000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e3150-wk-Fact-A059957CEFE12496D74CA8A4140EC055"
      unitRef="usd">330213000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3175-wk-Fact-A7AAA5D60B10837B8134A8A4140A17A1"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3194-wk-Fact-6395195FCA1CA8134B69A8A413FA6E8C"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48767212e3213-wk-Fact-AB454F78E238A7E98029A8A413EAD41D"
      unitRef="usd">-13155000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3264-wk-Fact-1B146729CE3E3D587601A8A413F6D416"
      unitRef="usd">853200000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3283-wk-Fact-A471588B051B8F271550A8A413FA6F3E"
      unitRef="usd">90356000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48767212e3303-wk-Fact-4739B4FAA25F6310C43DA8A413E1C588"
      unitRef="usd">-8274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d48767212e3323-wk-Fact-E7F7D9A29EED3C9CFA03A8A41464FDC8"
      unitRef="usd">935282000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3465-wk-Fact-00EDE7F437BDC166E5DD1BD94567F026"
      unitRef="usd">502018000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3484-wk-Fact-AD4B7EBA77BE6EECE75C1BD94A9F49A0"
      unitRef="usd">29477000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e3504-wk-Fact-7831956FD6D54860896B1BD94F683B4B"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_RecurringRevenueMember"
      decimals="-3"
      id="d48767212e3523-wk-Fact-9787E56143B31D1156641BD9532D8135"
      unitRef="usd">531495000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3543-wk-Fact-D1872DB020D4A5DA7C611BD9553AE6F3"
      unitRef="usd">252690000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3562-wk-Fact-0AFAED7B1C5C49B2D3E61BD95A0C42D4"
      unitRef="usd">52102000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e3581-wk-Fact-0EBE6D641B995E97EF9B1BD95EE8F517"
      unitRef="usd">4612000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_tyl_NonrecurringRevenueMember"
      decimals="-3"
      id="d48767212e3601-wk-Fact-FC2AC3637DA4BEF27BFC1BD9625B8160"
      unitRef="usd">309404000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3626-wk-Fact-8F95285CE4FA7C926388A8A414067511"
      unitRef="usd">-10425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3645-wk-Fact-DD2059B094EBCF2FF3C2A8A41402A163"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_IntersegmentEliminationMember"
      decimals="-3"
      id="d48767212e3664-wk-Fact-9151A3AEB604C1140F5FA8A414069429"
      unitRef="usd">-10425000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48767212e3715-wk-Fact-80CD0A31757594F83E70A8A41406AB8F"
      unitRef="usd">765133000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48767212e3734-wk-Fact-224701AFC1BA77577994A8A41406FCC9"
      unitRef="usd">81579000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD_srt_ConsolidationItemsAxis_tyl_CorporateAndEliminationsMember"
      decimals="-3"
      id="d48767212e3754-wk-Fact-F848E53917D07C81857FA8A414025134"
      unitRef="usd">-5813000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d48767212e3774-wk-Fact-0DAD9DFA6EFA8779F8C9A8A4145837D3"
      unitRef="usd">840899000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B7EE48BF0C7EFF7C37FCA8A414949CF6-0-wk-Fact-E2AF24AED8F844C5F228A8A4146489D2">&lt;div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred revenue, including long-term, by segment is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:52%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;December&#160;31, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Enterprise Software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;386,115&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;327,521&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Appraisal&#160;and&#160;Tax&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;25,210&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;20,018&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1,369&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;3,397&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:normal;"&gt;Totals&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;412,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;350,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Changes in total deferred revenue, including long-term, were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="5"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:76%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:21%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at beginning of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;350,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Deferral of revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;993,109&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Recognition of deferred revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;(931,351&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Balance at end of year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;412,694&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48760025e665-wk-Fact-9A13F96D46FA95BCF172A8A4140E5249"
      unitRef="usd">386115000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_EnterpriseSoftwareMember"
      decimals="-3"
      id="d48760025e684-wk-Fact-0A073056BA8016DEDACDA8A414404724"
      unitRef="usd">327521000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48760025e704-wk-Fact-2DCAF9A925021A295AB2A8A414442A7F"
      unitRef="usd">25210000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_tyl_AppraisalAndTaxMember"
      decimals="-3"
      id="d48760025e723-wk-Fact-1A7114DDC6DF5B263A94A8A414409834"
      unitRef="usd">20018000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48760025e748-wk-Fact-316444E80FCA7ECB34FCA8A4140EC669"
      unitRef="usd">1369000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4_srt_ConsolidationItemsAxis_us-gaap_CorporateNonSegmentMember"
      decimals="-3"
      id="d48760025e767-wk-Fact-08659F133DB3CC9BA09EA8A41440B1ED"
      unitRef="usd">3397000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48760025e797-wk-Fact-46EF0C643D08E4B52B41A8A4140A0134"
      unitRef="usd">412694000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48760025e816-wk-Fact-18685048AF3CDE2659F1A8A41412680F"
      unitRef="usd">350936000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4"
      decimals="-3"
      id="d48760025e887-wk-Fact-18685048AF3CDE2659F1A8A41412680F"
      unitRef="usd">350936000</us-gaap:ContractWithCustomerLiability>
    <tyl:ContractWithCustomerLiabilityIncreaseFromDeferral
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48760025e907-wk-Fact-DD63D5083C90923C7C6AA8A41417C99C"
      unitRef="usd">993109000</tyl:ContractWithCustomerLiabilityIncreaseFromDeferral>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d48760025e932-wk-Fact-AC60AE8FEEB1F1AB87F1A8A41448DF37"
      unitRef="usd">931351000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d48760025e963-wk-Fact-46EF0C643D08E4B52B41A8A4140A0134"
      unitRef="usd">412694000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="FI2019Q4"
      decimals="-7"
      id="d48760025e982-wk-Fact-745165322AF5C9740533A8A41470B309"
      unitRef="usd">1460000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01"
      decimals="2"
      id="d48760025e986-wk-Fact-3B44D3E872477F9F4DF4A8A41440C0AA"
      unitRef="number">0.49</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="FI2019Q4_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain_2020-01-01"
      id="d48760025e990-wk-Fact-52A678A3242347E9907A1BEBEF76F9C8">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <tyl:SalesCommissionsAmortizationPeriod
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember"
      id="d48760860e584-wk-Fact-C5F331BA6EAFACF0656DA8A4143CDBBB">P7Y</tyl:SalesCommissionsAmortizationPeriod>
    <us-gaap:CapitalizedContractCostNet
      contextRef="FI2019Q4"
      decimals="-5"
      id="d48760860e588-wk-Fact-4B0FBA02D6B16E40E205A8A414405F9F"
      unitRef="usd">29800000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="FI2018Q4"
      decimals="-5"
      id="d48760860e592-wk-Fact-848C1DDEC58D51789D24A8A4140E7A1C"
      unitRef="usd">21900000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d48760860e596-wk-Fact-8DF1CDC3EA4DB3EB218FA8A4144891DC"
      unitRef="usd">17800000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d48760860e601-wk-Fact-6BF19B8FC17EA207F935A8A4140EDA60"
      unitRef="usd">15600000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:CapitalizedContractCostAmortization
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d48760860e605-wk-Fact-DB5ACE790F4C08C0F6DC39F7B6B4DD0C"
      unitRef="usd">11200000</us-gaap:CapitalizedContractCostAmortization>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FDB0E22FF048156BAC71A8A414941243-0-wk-Fact-94BF29B2EA61E61658FBA8A414604DC7">SUBSEQUENT EVENTS&lt;div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;There are no material events or transactions that have occurred subsequent to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;31, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-4AE2CE7B7669221858C7A8A41494BE11-0-wk-Fact-85E70718CA073D23FCD9A8A41460FC89">QUARTERLY FINANCIAL INFORMATION (unaudited)&lt;div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table contains selected financial information from unaudited statements of income for each quarter of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;:&lt;/span&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.62583095916429%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="32"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:29%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="31" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Quarters Ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Dec. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Sept. 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;June 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Mar. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Dec. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Sept. 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;June 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Mar. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;288,837&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;275,400&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;275,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;247,066&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;241,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;236,067&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;236,060&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221,174&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross profit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;142,275&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;130,717&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;127,860&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;116,048&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;115,871&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;111,626&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;109,276&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;102,805&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Income before income taxes &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;47,790&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,552&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;36,419&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;35,077&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,107&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,626&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,700&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,437&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,790&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,390&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,552&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,924&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Earnings per diluted share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.15&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.69&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.96&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.95&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares used in computing diluted&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160; earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,736&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,280&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,585&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,528&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,224&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,836&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-41D9824527B1CE5E3366A8A4149465F0-0-wk-Fact-7C5DD38E5DC19B6EE665A8A41460F4A4">&lt;div style="line-height:120%;padding-bottom:8px;padding-top:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table contains selected financial information from unaudited statements of income for each quarter of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;:&lt;/span&gt;&lt;div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:97.62583095916429%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="32"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:29%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="31" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Quarters Ended&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Dec. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Sept. 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;June 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Mar. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Dec. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Sept. 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;June 30&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Mar. 31&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Revenues&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;288,837&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;275,400&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;275,124&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;247,066&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;241,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;236,067&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;236,060&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;221,174&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Gross profit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;142,275&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;130,717&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;127,860&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;116,048&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;115,871&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;111,626&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;109,276&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;102,805&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Income before income taxes &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;47,790&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,552&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;36,419&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;35,077&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,107&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,626&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,700&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,437&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;46,790&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,390&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;27,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;31,552&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;38,924&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;37,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Earnings per diluted share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.15&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;1.00&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.69&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.96&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;0.95&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;Shares used in computing diluted&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&#160; earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,736&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,280&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,813&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,585&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,528&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;40,224&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;span&gt;39,836&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d48769918e1136-wk-Fact-9A8BF168A9068BC3306E1BF1BAEF914D"
      unitRef="usd">288837000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d48769918e1155-wk-Fact-B528F59FEF5004118491A8A41440C14A"
      unitRef="usd">275400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d48769918e1174-wk-Fact-F1DD68EAC1E506B40EB4A8A414402E38"
      unitRef="usd">275124000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d48769918e1194-wk-Fact-DE05E913DD01B6C78EA8A8A41444FF1D"
      unitRef="usd">247066000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d48769918e1213-wk-Fact-D9227CD1AEE6B3AB151DA8A41444604C"
      unitRef="usd">241981000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d48769918e1233-wk-Fact-F8CB14AF43B8E701CE76A8A4144035EF"
      unitRef="usd">236067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d48769918e1252-wk-Fact-8FD7EC86A6E0C5233CBDA8A41440C28A"
      unitRef="usd">236060000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d48769918e1271-wk-Fact-A74D16587B7BCE6E7CFFA8A4144011D0"
      unitRef="usd">221174000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d48769918e1286-wk-Fact-30F73C6A22C97A6565091BF1BAE83732"
      unitRef="usd">142275000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d48769918e1305-wk-Fact-276B73743ED4B848A0FAA8A41438607C"
      unitRef="usd">130717000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d48769918e1324-wk-Fact-C0567C8A2303F48DD31EA8A414481218"
      unitRef="usd">127860000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d48769918e1344-wk-Fact-C5A22F3BF98F9EFE452BA8A414483370"
      unitRef="usd">116048000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d48769918e1363-wk-Fact-CC88494558F599DD7231A8A4144445BF"
      unitRef="usd">115871000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d48769918e1382-wk-Fact-00160948EAA428578913A8A414486749"
      unitRef="usd">111626000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d48769918e1402-wk-Fact-45A597BA6FEC807AF221A8A41440BC88"
      unitRef="usd">109276000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d48769918e1421-wk-Fact-F3A08EEDB2078FACE14DA8A4144011BF"
      unitRef="usd">102805000</us-gaap:GrossProfit>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d48769918e1441-wk-Fact-289EC4BAAC7AC0ACE26F1BF1BAEB6380"
      unitRef="usd">47790000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d48769918e1460-wk-Fact-C4FF111F57DEEB4E149AA8A414487D06"
      unitRef="usd">40552000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d48769918e1479-wk-Fact-9C1F6009E80DE9990364A8A41440AF92"
      unitRef="usd">36419000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d48769918e1499-wk-Fact-C408CEA05CA55889775EA8A41444C44A"
      unitRef="usd">35077000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d48769918e1518-wk-Fact-8E54D0AB90C860D0250CA8A414440FF3"
      unitRef="usd">40107000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d48769918e1537-wk-Fact-DB198F1ED0F69EA6CD28A8A41444DB9B"
      unitRef="usd">38626000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d48769918e1557-wk-Fact-B6C42DC0F737C208697BA8A41444411B"
      unitRef="usd">37700000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d48769918e1576-wk-Fact-F8D20611A76ED912D5C9A8A4144CD3C6"
      unitRef="usd">39437000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d48769918e1596-wk-Fact-42CBC0E12BE2653845AE1BF1BAE0321E"
      unitRef="usd">46790000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d48769918e1615-wk-Fact-C4D19D518A049F093CC5A8A41444A1CB"
      unitRef="usd">40390000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d48769918e1634-wk-Fact-2976E3220D2890C9C7A1A8A41440E962"
      unitRef="usd">31999000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d48769918e1654-wk-Fact-A5BF5863671055447BFDA8A41444A96C"
      unitRef="usd">27348000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d48769918e1673-wk-Fact-318C11F71A5E226D1B30A8A41448FD77"
      unitRef="usd">31552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d48769918e1692-wk-Fact-FC49AEBF54EA6EE221FEA8A414443C09"
      unitRef="usd">38924000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d48769918e1712-wk-Fact-F4342FD5E4AA111119EDA8A414481F14"
      unitRef="usd">39161000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d48769918e1731-wk-Fact-62C580B5E39FD3501061A8A41444E14A"
      unitRef="usd">37825000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4QTD"
      decimals="2"
      id="d48769918e1756-wk-Fact-EA0079EECA5B3C9598C0A8A41444F5CC"
      unitRef="usdPerShare">1.15</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q3QTD"
      decimals="2"
      id="d48769918e1775-wk-Fact-2E70124A2CC77AAA3AC8A8A4144C55F6"
      unitRef="usdPerShare">1.00</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q2QTD"
      decimals="2"
      id="d48769918e1794-wk-Fact-A6B183F6BC1AE8FA52C0A8A414489685"
      unitRef="usdPerShare">0.80</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q1QTD"
      decimals="2"
      id="d48769918e1814-wk-Fact-398C47C438285542C509A8A4143C62C6"
      unitRef="usdPerShare">0.69</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4QTD"
      decimals="2"
      id="d48769918e1833-wk-Fact-412B58A70900027807C2A8A414489E86"
      unitRef="usdPerShare">0.79</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q3QTD"
      decimals="2"
      id="d48769918e1853-wk-Fact-AA4698B43B43CC172FA5A8A41444A73C"
      unitRef="usdPerShare">0.96</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q2QTD"
      decimals="2"
      id="d48769918e1872-wk-Fact-90D08891161A5ECBBEBCA8A4144401EE"
      unitRef="usdPerShare">0.97</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q1QTD"
      decimals="2"
      id="d48769918e1891-wk-Fact-3C5D7E62674D1559AAF9A8A41444B3F3"
      unitRef="usdPerShare">0.95</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d48769918e1909-wk-Fact-14F95D3FF50011F406C81BF1BAE5616B"
      unitRef="shares">40736000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d48769918e1928-wk-Fact-56D5C4A84ADEEA418ED9A8A4143CC53A"
      unitRef="shares">40280000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d48769918e1947-wk-Fact-22D9A154453BE6E57EC5A8A41444A389"
      unitRef="shares">39813000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d48769918e1967-wk-Fact-023E1A351C3666E8961DA8A414443895"
      unitRef="shares">39585000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d48769918e1986-wk-Fact-A8A80B9D296B37F79413A8A4143C4340"
      unitRef="shares">39891000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d48769918e2005-wk-Fact-B6300EA80F25A67E6DB5A8A4143C273D"
      unitRef="shares">40528000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d48769918e2025-wk-Fact-E5CE8E7E9EF3BE4535DDA8A4143CA2A0"
      unitRef="shares">40224000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d48769918e2044-wk-Fact-C396F782CE3586B9CEE5A8A41440E8FE"
      unitRef="shares">39836000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6833188896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PRINCIPLES OF CONSOLIDATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The consolidated financial statements include our parent company and </span><span style="font-family:inherit;font-size:10pt;"><span>sixteen</span></span><span style="font-family:inherit;font-size:10pt;"> subsidiaries, which are wholly-owned. All significant intercompany balances and transactions have been eliminated in consolidation. Comprehensive income is defined as the change in equity of a business enterprise during a period from transactions, and other events and circumstances from non-owner sources and includes all components of net income (loss) and other comprehensive income (loss). We had no items of other comprehensive income (loss) during the years ended December 31, </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CASH AND CASH EQUIVALENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash in excess of that necessary for operating requirements is invested in short-term, highly liquid, income-producing investments. Investments with original maturities of three months or less are classified as cash and cash equivalents, which primarily consist of cash on deposit with several banks and money market funds. Cash and cash equivalents are stated at cost, which approximates market value.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">REVENUE RECOGNITION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Nature of Products and Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#8220;PCS&#8221; or &#8220;maintenance&#8221;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the contract, or contracts, with a customer</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Determination of the transaction price</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Allocation of the transaction price to the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recognition of revenue when, or as, we satisfy a performance obligation</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether those services are highly interdependent or interrelated to the product&#8217;s functionality. The transaction price is allocated to the distinct performance obligations on a relative standalone selling price (&#8220;SSP&#8221;) basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Software Arrangements:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Licenses and Royalties</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many of our software arrangements involve &#8220;off-the-shelf&#8221; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#8217;s purpose upon installation, and remaining services such as training are not considered highly interdependent or interrelated to the product's functionality.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software license fees are billed in accordance with the contract terms. Typically, a majority of the fee is due when access to the software license is made available to the customer and the remainder of the fee due over a passage of time stipulated by the contract.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We recognize royalty revenue when the sale occurs under the terms of our third-party royalty arrangements. Currently, our third-party royalties are recognized on an estimated basis and are trued up when we receive notice of amounts we are entitled to receive. We typically receive notice of royalty revenues we are entitled to and billed on a quarterly basis in the quarter immediately following the royalty reporting period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As noted above, some of our software arrangements include services considered highly interdependent or highly interrelated or require significant customization to meet the customer's desired functionality. For these software arrangements, both the software licenses and related software services revenue are not distinct and are recognized over time using the progress-to-completion method. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts.  Contract fees are typically billed on a milestone basis as defined within contract terms.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met. When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material basis.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Post-Contract Customer Support</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our customers generally enter into PCS agreements when they purchase our software licenses. PCS includes telephone support, bug fixes, and rights to upgrades on a when-and-if available basis. PCS is considered distinct when purchased with our software licenses. Our PCS agreements are typically renewable annually. PCS is recognized over time on a straight-line basis over the period the PCS is provided. All significant costs and expenses associated with PCS are expensed as incurred.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Computer Hardware Equipment</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenue allocable to computer hardware equipment is recognized at a point in time when control of the equipment is transferred to the customer.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Subscription-Based Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based services consist primarily of revenues derived from SaaS arrangements, typically utilizing the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. Our subscription contracts are generally&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> or longer in length, billed annually in advance, and non-cancelable.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#8217;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements services ratably over the term of the arrangement, which range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>ten years</span></span><span style="font-family:inherit;font-size:10pt;">, but are typically for a period of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Electronic filing transaction fees primarily pertain to documents filed with the courts by attorneys and other third-parties via our e-filing services and retrieval of filed documents via our access services. For each document filed with a court, the filer generally pays a transaction fee and a court filing fee to us and we remit a portion of the transaction fee and the filing fee to the court. We record as revenue the transaction fee, while the portion of the transaction fee remitted to the courts is recorded as cost of revenues as we are acting as a principal in the arrangement. Court filing fees collected on behalf of the courts and remitted to the courts are recorded on a net basis and thus do not affect the statement of comprehensive income. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. In general, when we are the principal in a transaction based on the factors identified in ASC 606-10-55-36 through 55-40, we record the revenue and related costs on a gross basis. Otherwise, we net the cost of revenue associated with the service against the gross revenue (amount billed to the customer) and record the net amount as revenue.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For e-filing transaction fees and other transaction-based revenues, we have the right to charge the customer an amount that directly corresponds with the value to the customer of our performance to date. Therefore, we recognize revenue for these services over time based on the amount billable to the customer in accordance with the 'as invoiced' practical expedient in ASC 606-10-55-18. In some cases, we are paid on a fixed fee basis and recognize the revenue ratably over the contractual period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs of performing services under subscription-based arrangements are expensed as incurred, except for certain direct and incremental contract origination and set-up costs associated with SaaS arrangements. Such direct and incremental costs are capitalized and amortized ratably over the useful life.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Appraisal Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;">-year periods and consist of various unique activities. Appraisal services require a significant level of integration and interdependency with various individual service components; therefore, the service components are not considered distinct. Appraisal services are recognized over time by measuring progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often executed over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent. Contract fees are typically billed on a milestone basis as defined within contract terms. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Significant Judgments:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our contracts with customers often include multiple performance obligations to a customer. When a software arrangement (license or subscription) includes both software licenses and software services, judgment is required to determine whether the software license is considered distinct and accounted for separately, or not distinct and accounted for together with the software services and recognized over time. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.</span><span style="font-family:inherit;font-size:8pt;"> </span><span style="font-family:inherit;font-size:10pt;">We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services otherwise cannot be considered distinct, we recognize revenue as control is transferred to the customer over time using progress-to-completion methods. Depending on the contract, we measure progress-to-completion primarily using labor hours incurred, or value added. The progress-to-completion method generally results in the recognition of reasonably consistent profit margins over the life of a contract because we can provide reasonably dependable estimates of contract billings and contract costs. We use the level of profit margin that is most likely to occur on a contract. If the most likely profit margin cannot be precisely determined, the lowest probable level of profit margin in the range of estimates is used until the results can be estimated more precisely. These arrangements are often implemented over an extended time period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Typically, the structure of our arrangements does not give rise to variable consideration.&#160;However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Refer to Note 15 - "Disaggregation of Revenue" for further information, including the economic factors that affect the nature, amount, timing, and uncertainty of revenue and cash flows of our various revenue categories.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Contract Balances:</span><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Accounts receivable and allowance for doubtful accounts and sales adjustments</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition may differ from the timing of invoicing to customers. We record an unbilled receivable when revenue is recognized prior to invoicing, or deferred revenue when revenue is recognized subsequent to invoicing. For multi-year agreements, we generally invoice customers annually at the beginning of each annual coverage period. We record an unbilled receivable related to revenue recognized for on-premises licenses as we have an unconditional right to invoice and receive payment in the future related to those licenses.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,396</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Provisions for losses and sales adjustments - accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,636</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(569</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,031</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Collection of accounts previously written off</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(545</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(211</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,738</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The allowance for doubtful accounts and sales adjustments reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with our appraisal services contracts and certain software services contracts, we may perform work prior to when the software and services are billable and/or payable pursuant to the contract. Unbilled revenue is not billable at the balance sheet date but is recoverable over the remaining life of the contract through billings made in accordance with contractual agreements. The termination clauses in most of our contracts provide for the payment for the value of products delivered or services performed in the event of early termination. We have historically recorded such unbilled receivables (costs and estimated profit in excess of billings) in connection with (1)&#160;property appraisal services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing normally occurs subsequently and may span another accounting period; (2)&#160;software services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing for the software element of the arrangement may be based upon the specific phase of the implementation; (3)&#160;software revenue for which we have recognized revenue at the point in time when the software is made available to the customer but the billing has not yet been submitted to the customer; (4)&#160;some of our contracts which provide for an amount to be withheld from a progress billing (generally between </span><span style="font-family:inherit;font-size:10pt;"><span>5%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>20%</span></span><span style="font-family:inherit;font-size:10pt;"> retention) until final and satisfactory project completion is achieved; and (5)&#160;in a limited number of cases, extended payment terms, which may be granted to customers with whom we generally have a long-term relationship and favorable collection history.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, total current and long-term accounts receivable, net of allowance for doubtful accounts, was </span><span style="font-family:inherit;font-size:10pt;"><span>$396.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$314.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. We have recorded unbilled receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$134.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$104.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. Included in unbilled receivables are retention receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$13.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$12.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively, which become payable upon the completion of the contract or completion of our fieldwork and formal hearings. Unbilled receivables expected to be collected within one year have been included with accounts receivable, current portion in the accompanying consolidated balance sheets. Unbilled receivables and retention receivables expected to be collected past one year have been included with accounts receivable, long-term portion in the accompanying consolidated balance sheets.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within </span><span style="font-family:inherit;font-size:10pt;">30</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>90 days</span></span><span style="font-family:inherit;font-size:10pt;">. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with simplified and predictable ways of purchasing our products and services, not to receive financing from our customers or to provide customers with financing. Examples include invoicing at the beginning of a subscription term with revenue recognized ratably over the contract period, and multi-year on-premises term licenses that are invoiced annually with revenue recognized upfront.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Revenue</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of deferred revenue consists of deferred maintenance revenue that has been billed based on contractual terms in the underlying arrangement, with the remaining balance consisting of payments received in advance of revenue being earned under software licensing, subscription-based services, software and appraisal services and hardware installation. Refer to Note 16 - "Deferred Revenue and Performance Obligations" for further information, including deferred revenue by segment and changes in deferred revenue during the period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Commissions </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized on a straight-line basis over a period of benefit that we have determined to be&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>seven years</span></span><span style="font-family:inherit;font-size:10pt;">. We utilized the "portfolio approach" practical expedient in ASC 606-10-10-4, which allows entities to apply the guidance to a portfolio of contracts with similar characteristics because the effects on the financial statements of this approach would not differ materially from applying the guidance to individual contracts. Using the 'portfolio approach', we determined the period of benefit by taking into consideration our customer contracts, our technology life-cycle and other factors. Sales commissions for renewal contracts are generally not paid in connection with the renewal of a contract.  In the small number of instances where a commission is paid on a renewal, it is not commensurate with the commission paid on the initial sale and is recognized over the term of renewal, which is generally </span><span style="font-family:inherit;font-size:10pt;"><span>one year</span></span><span style="font-family:inherit;font-size:10pt;">. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of income. Refer to Note 17 - "Deferred Commissions" for further information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prepaid expenses and other current assets include direct and incremental costs such as commissions associated with arrangements for which revenue recognition has been deferred. Such costs are expensed at the time the related revenue is recognized.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text">USE OF ESTIMATES<div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of our financial statements in conformity with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) requires us 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. Significant items subject to such estimates and assumptions include revenue recognition, determining the nature and timing of satisfaction of performance obligations, determining the SSP of performance obligations, variable consideration, and other obligations such as returns and refunds; loss contingencies; the estimated useful life of deferred commissions; the carrying amount and estimated useful lives of intangible assets; the carrying amount of operating lease right-of-use assets and operating lease liabilities; determining share-based compensation expense; the valuation allowance for receivables; and determining the potential outcome of future tax consequences of events that have been recognized on our consolidated financial statements or tax returns. Actual results could differ from estimates.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and Equipment, Net</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PROPERTY AND EQUIPMENT, NET</span></div>Property, equipment and purchased software are recorded at original cost and increased by the cost of any significant improvements after purchase. We expense maintenance and repairs when incurred. Depreciation and amortization is calculated using the straight-line method over the shorter of the asset&#8217;s estimated useful life or the term of the lease in the case of leasehold improvements. For income tax purposes, we use accelerated depreciation methods as allowed by tax laws.<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_ResearchAndDevelopmentExpensePolicy', window );">Research and Development Costs</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RESEARCH AND DEVELOPMENT COSTS</span></div><span style="font-family:inherit;font-size:10pt;">We expensed research and development expense of </span><span style="font-family:inherit;font-size:10pt;"><span>$81.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$63.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$47.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span>.&#160;&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INCOME TAXES</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income taxes are accounted for under the asset and liability method. Deferred taxes arise because of different treatment between financial statement accounting and tax accounting, known as &#8220;temporary differences". We record the tax effect of these temporary differences as &#8220;deferred tax assets&#8221; (generally items that can be used as a tax deduction or credit in the future periods) and &#8220;deferred tax liabilities&#8221; (generally items that we received a tax deduction for, which have not yet been recorded in the income statement). The deferred tax assets and liabilities are measured using enacted tax rules and laws that are expected to be in effect when the temporary differences are expected to be recovered or settled. A valuation allowance would be established to reduce deferred tax assets if it is more likely than not that a deferred tax asset will not be "realized."&#160;On December 22, 2017, the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;(the &#8220;Tax Act&#8221;) was enacted into law. The Tax Act amends the Internal Revenue Code to reduce tax rates and modify policies, credits and deductions for individuals and businesses. For businesses, the Tax Act reduces the corporate U.S. federal tax rate from a maximum of&#160;35%&#160;to a flat&#160;21% rate and transitions from a worldwide tax system to a territorial tax system. Under ASC 740 Income Taxes, the effects of changes in tax rates and laws are recognized in the period in which the new legislation is enacted. </span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SHARE-BASED COMPENSATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have a share-based award plan that provides for the grant of stock options, restricted stock units, and performance share units to key employees, directors and non-employee consultants. Stock options generally vest after </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>six years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant and have a contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span>10</span></span><span style="font-family:inherit;font-size:10pt;"> years. Restricted stock unit grants generally vest ratably over&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Stock Compensation</span><span style="font-family:inherit;font-size:10pt;">. See Note 9 &#8211; &#8220;Share-Based Compensation&#8221; for further information. </span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and Other Intangible Assets</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Goodwill</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price over the fair value of net assets acquired, including identifiable intangible assets, in connection with our business combinations. Upon acquisition, goodwill is assigned to the reporting unit that is expected to benefit from the synergies of the business combination, which is the reporting unit to which the related acquired technology is assigned. A reporting unit is the operating segment, or a business unit one level below that operating segment, for which discrete financial information is prepared and regularly reviewed by executive management. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. If it is determined through the evaluation of events or circumstances that the carrying value may not be recoverable, we perform a comparison of the estimated fair value of the reporting unit to which the goodwill has been assigned to the sum of the carrying value of the assets and liabilities of that unit. If the sum of the carrying value of the assets and liabilities of a reporting unit exceeds the estimated fair value of that reporting unit, the carrying value of the reporting unit's goodwill is reduced to its fair value through an adjustment to the goodwill balance, resulting in an impairment charge. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, did </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;">t result in an impairment charge. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> There have been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> impairments of intangible assets in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Other Intangible Assets</span></div>We make judgments about the recoverability of purchased intangible assets other than goodwill whenever events or changes in circumstances indicate that an impairment may exist. Customer base and acquired software each comprise approximately half of our purchased intangible assets other than goodwill. We review our customer turnover each year for indications of impairment. Our customer turnover has historically been very low.&#160;If indications of impairment are determined to exist, we measure the recoverability of assets by a comparison of the carrying amount of the asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets.<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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We periodically evaluate whether current facts or circumstances indicate that the carrying value of our property and equipment or other long-lived assets to be held and used may not be recoverable. If such circumstances are determined to exist, we measure the recoverability of assets to be held and used by a comparison of the carrying amount of the asset or appropriate grouping of assets and the estimated undiscounted future cash flows expected to be generated by the assets. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated. The assets and liabilities of a disposed group or classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There have been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> significant impairments of long-lived assets in any of the periods presented.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy', window );">Costs of Computer Software</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">COSTS OF COMPUTER SOFTWARE</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We capitalize software development costs upon the establishment of technological feasibility and prior to the availability of the product for general release to customers. Software development costs primarily consist of personnel costs and rent for related office space. We capitalized approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$4.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> of software development costs in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. We begin to amortize capitalized costs when a product is available for general release to customers. Amortization expense is determined on a product-by-product basis at a rate not less than straight-line basis over the product&#8217;s remaining estimated economic life of, generally, </span><span style="font-family:inherit;font-size:10pt;">five</span><span style="font-family:inherit;font-size:10pt;"> years. Amortization of software development costs was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$296,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, and is included in cost of software license revenue in the accompanying consolidated statements of comprehensive income. We have not capitalized any internal use software development costs in any of the periods presented.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationsPolicy', window );">Contingent Purchase Consideration</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Contingent future cash payments related to acquisitions are recognized at fair value as of the acquisition date and included in the determination of the acquisition date purchase price. Subsequent changes in the fair value of the contingent future cash payments are recognized in earnings in the period that the change occurs.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash and cash equivalents, accounts receivables, accounts payables, short-term obligations and certain other assets at cost approximate fair value because of the short maturity of these instruments. The fair value of our revolving line of credit would approximate book value as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, because our interest rates reset approximately every 30 days or less. See Note 6 &#8211; &#8220;Revolving Line of Credit&#8221; for further discussion.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$81.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from </span><span style="font-family:inherit;font-size:10pt;">2020 through 2023</span><span style="font-family:inherit;font-size:10pt;">.&#160;We intend to hold these bonds to maturity and have classified them as such.&#160;We believe cost approximates fair value.&#160;The fair values of these securities are considered Level II as they are based on inputs from quoted prices in markets that are not active or from other observable market data. These investments are included in short-term investments and non-current investments and other assets.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$15.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> invested in convertible preferred stock representing a </span><span style="font-family:inherit;font-size:10pt;"><span>20%</span></span><span style="font-family:inherit;font-size:10pt;"> interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings. The investment in convertible preferred stock is accounted under the cost method because we do not have the ability to exercise significant influence over the investee and the securities do not have readily determinable fair values. Our investment is carried at cost less any impairment write-downs. Our cost method investments are assessed annually for impairment. We do not reassess the fair value of cost method investments if there are no identified events or changes in circumstances that may have a significant adverse effect on the fair value of the investments. There has been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> impairment of our cost method investment for the periods presented. This investment is included in non-current investments and other assets in the accompanying consolidated balance sheets.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Concentrations of Credit Risk</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONCENTRATIONS OF CREDIT RISK </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents, accounts receivable from trade customers, and investments in marketable securities. Our cash and cash equivalents primarily consist of operating account balances and money market funds, which are maintained at several major domestic financial institutions and the balances often exceed insured amounts. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had cash and cash equivalents of </span><span style="font-family:inherit;font-size:10pt;"><span>$232.7 million</span></span><span style="font-family:inherit;font-size:10pt;">. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Concentrations of credit risk with respect to receivables are limited due to the size and geographical diversity of our customer base. Historically, our credit losses have not been significant. As a result, we do not believe we have any significant concentrations of credit risk as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">LEASES</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We determine if an arrangement is a lease at inception. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, and operating lease liabilities, current and long-term, on our consolidated balance sheets. We currently do not have any finance lease arrangements. </span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Operating lease ROU assets and operating lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date of the lease in determining the present value of future payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives and initial direct costs incurred. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term. Leases with an initial term of 12 months or less are not recorded on the balance sheet; we recognize lease expense for these leases on a straight-line basis over the lease term. We have lease agreements with lease and non-lease components, which are generally accounted for as a single lease component. </span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies', window );">Indemnification</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INDEMNIFICATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software license agreements indemnify our customers in the event that the software sold infringes upon the intellectual property rights of a third-party. These agreements typically provide that in such event we will either modify or replace the software so that it becomes non-infringing or procure for the customer the right to use the software. We have recorded no liability associated with these indemnifications, as we are not aware of any pending or threatened infringement actions that are possible losses. We believe the estimated fair value of these intellectual property indemnification clauses is minimal.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have also agreed to indemnify our officers and board members if they are named or threatened to be named as a party to any proceeding by reason of the fact that they acted in such capacity. We maintain directors&#8217; and officers&#8217; liability insurance coverage to protect against any such losses. We have recorded no liability associated with these indemnifications. Because of our insurance coverage, we believe the estimated fair value of these indemnification agreements is minimal.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassifications</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECLASSIFICATIONS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Certain amounts for previous years have been reclassified to conform to the current year presentation.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recently Adopted Accounting Pronouncements and New Accounting Pronouncements</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:16px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Leases.</span><span style="font-family:inherit;font-size:10pt;"> We adopted ASU No. 2016-02, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Leases</span><span style="font-family:inherit;font-size:10pt;"> ("Topic 842") using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of the lease arrangement. The impact of adoption is reflected in the financial information herein. For additional details, see Note 11 to our consolidated financial statements.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of ROU assets and operating lease liabilities, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and continue to have none as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">NEW ACCOUNTING PRONOUNCEMENTS</span></div><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU 2016-13,&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Financial Instruments -&#160;Credit&#160;Losses,</span>&#160;(&#8220;ASU 2016-13&#8221;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#8217;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020. We have evaluated the impact of this standard on our consolidated financial statements, including accounting policies, processes and systems. Based on the nature of the Company's customer base and historical nature of losses, we do not expect the impact to be material upon adoption.<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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</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 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI http://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-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_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=98513485&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=6877327&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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-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_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 credit risk.</p></div>
<a 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 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<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 825<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108315417&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.3A-02)<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355033-122828<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 S99<br> -Paragraph 3<br> -Subparagraph (SX 210.3A-03)<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355100-122828<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 4: 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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 determining the fair value of financial instruments.</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 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13279-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-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_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<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 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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GuaranteesIndemnificationsAndWarrantiesPolicies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 guarantees, indemnifications and product warranties, and methodologies used in determining the amount of such 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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&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_GuaranteesIndemnificationsAndWarrantiesPolicies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 3: 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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32847-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 740<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6491622&amp;loc=d3e9504-115650<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 4: 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 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116657188&amp;loc=SL116659661-227067<br><br>Reference 6: 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 19<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32840-109319<br><br>Reference 7: 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 25<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32247-109318<br><br>Reference 8: 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 28<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32280-109318<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 05<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=65884525&amp;loc=d3e40913-109327<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 leasing arrangement entered into by lessee.</p></div>
<a 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 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918666-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_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 reclassifications that affects the comparability 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 205<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6359566&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, basis of assets, depreciation and depletion methods used, including composite deprecation, estimated useful lives, capitalization policy, accounting treatment for costs incurred for repairs and maintenance, capitalized interest and the method it is calculated, disposals and impairments.</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(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-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_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 costs it has 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.</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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 2: 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_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from contract with customer.</p></div>
<a 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=84158767&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<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 (b),(f)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 costs incurred to (1) establish the technological feasibility of a computer software product to be sold, leased, or otherwise marketed; and (2) produce product masters after establishing technological feasibility. This accounting policy also may apply to purchased computer software. This policy also may address the entity's amortization policy for its capitalized computer software costs and how it evaluates such capitalized costs for impairment.</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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SoftwareToBeSoldLeasedOrOtherwiseMarketedPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842388736">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 232,682<span></span>
</td>
<td class="nump">$ 134,279<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_AccountsReceivableNetCurrent', window );">Accounts receivable (less allowance for losses and sales adjustments of $5,738 in 2019 and $4,647 in 2018)</a></td>
<td class="nump">374,089<span></span>
</td>
<td class="nump">298,912<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_ShortTermInvestments', window );">Short-term investments</a></td>
<td class="nump">39,399<span></span>
</td>
<td class="nump">44,306<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_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">24,717<span></span>
</td>
<td class="nump">33,258<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_IncomeTaxReceivable', window );">Income tax receivable</a></td>
<td class="nump">6,482<span></span>
</td>
<td class="nump">4,697<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_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">2,328<span></span>
</td>
<td class="nump">3,406<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">679,697<span></span>
</td>
<td class="nump">518,858<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_AccountsReceivableNetNoncurrent', window );">Accounts receivable, long-term</a></td>
<td class="nump">22,432<span></span>
</td>
<td class="nump">16,020<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_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">18,992<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">171,861<span></span>
</td>
<td class="nump">155,177<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_OtherAssetsNoncurrentAbstract', window );"><strong>Other assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">840,117<span></span>
</td>
<td class="nump">753,718<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_IntangibleAssetsNetExcludingGoodwill', window );">Other intangibles, net</a></td>
<td class="nump">378,914<span></span>
</td>
<td class="nump">276,852<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_InvestmentsAndOtherNoncurrentAssets', window );">Non-current investments and other assets</a></td>
<td class="nump">79,601<span></span>
</td>
<td class="nump">70,338<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">2,191,614<span></span>
</td>
<td class="nump">1,790,963<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 " 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">14,977<span></span>
</td>
<td class="nump">6,910<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_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">75,234<span></span>
</td>
<td class="nump">66,480<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_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">6,387<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="nump">412,495<span></span>
</td>
<td class="nump">350,512<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">509,093<span></span>
</td>
<td class="nump">423,902<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_LongTermLineOfCredit', window );">Revolving line of credit</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Deferred revenue, long-term</a></td>
<td class="nump">199<span></span>
</td>
<td class="nump">424<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_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">48,442<span></span>
</td>
<td class="nump">41,791<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_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, long-term</a></td>
<td class="nump">16,822<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $10.00 par value; 1,000,000 shares authorized; none issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value; 100,000,000 shares authorized; 48,147,969 shares issued in 2019 and 2018</a></td>
<td class="nump">481<span></span>
</td>
<td class="nump">481<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_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">739,478<span></span>
</td>
<td class="nump">731,435<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_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss, net of tax</a></td>
<td class="num">(46)<span></span>
</td>
<td class="num">(46)<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_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">917,336<span></span>
</td>
<td class="nump">771,925<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_TreasuryStockValue', window );">Treasury stock, at cost; 8,839,352 and 9,872,505 shares in 2019 and 2018, respectively</a></td>
<td class="num">(40,191)<span></span>
</td>
<td class="num">(178,949)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">1,617,058<span></span>
</td>
<td class="nump">1,324,846<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Liabilities and Shareholders' equity, Total</a></td>
<td class="nump">$ 2,191,614<span></span>
</td>
<td class="nump">$ 1,790,963<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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-111522<br><br>Reference 3: 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=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: 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=118951113&amp;loc=d3e6676-107765<br><br>Reference 5: 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=118952595&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_AccountsReceivableNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 2: 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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 3: 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(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: 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=6877327&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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-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_AccountsReceivableNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<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 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<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 14<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e681-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_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=6876686&amp;loc=d3e534808-122878<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 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<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)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=118951113&amp;loc=d3e6801-107765<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.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=118932676&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=118951113&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&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=119400593&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=6876686&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=118942415&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://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 obligation to transfer good or service to customer for which consideration has been received or is 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 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br><br>Reference 3: 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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 obligation to transfer good or service to customer for which consideration has been received or is receivable, 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 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 3: 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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, 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://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=84230637&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_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://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=77989000&amp;loc=SL49117168-202975<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 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_IncomeTaxReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income taxes previously overpaid to tax authorities (such as U.S. Federal, state and local tax authorities) representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. Also called income tax refund 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 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=6877327&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(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InvestmentsAndOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 investments, and noncurrent 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_InvestmentsAndOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://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=6876686&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 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=119400593&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermLineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</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.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1336-112600<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1314-112600<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermLineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=77888419&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_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=77888419&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=77888419&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_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherAssetsNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherAssetsNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6787-107765<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 (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&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 340<br> -SubTopic 10<br> -Section 05<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=68074540&amp;loc=d3e5879-108316<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=6877327&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=119400593&amp;loc=d3e572229-122910<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(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=6877327&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)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.</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(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&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)(1)(g))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<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(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://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=27010918&amp;loc=d3e74512-122707<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(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br><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,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817271008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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, 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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DESCRIPTION OF BUSINESS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide integrated software systems and related services for the public sector, with a focus on local governments. We develop and market a broad line of software solutions and services to address the information technology (&#8220;IT&#8221;) needs primarily of cities, counties, schools and other local government entities. In addition, we provide professional IT services, including software and hardware installation, data conversion, training, and for certain customers, product modifications, along with continuing maintenance and support for customers using our systems. We also provide subscription-based services such as software as a service (&#8220;SaaS&#8221;) arrangements, which primarily utilize the Tyler private cloud, and electronic document filing solutions (&#8220;e-filing&#8221;). In addition, we provide property appraisal outsourcing services for taxing jurisdictions.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PRINCIPLES OF CONSOLIDATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The consolidated financial statements include our parent company and </span><span style="font-family:inherit;font-size:10pt;"><span>sixteen</span></span><span style="font-family:inherit;font-size:10pt;"> subsidiaries, which are wholly-owned. All significant intercompany balances and transactions have been eliminated in consolidation. Comprehensive income is defined as the change in equity of a business enterprise during a period from transactions, and other events and circumstances from non-owner sources and includes all components of net income (loss) and other comprehensive income (loss). We had no items of other comprehensive income (loss) during the years ended December 31, </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CASH AND CASH EQUIVALENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash in excess of that necessary for operating requirements is invested in short-term, highly liquid, income-producing investments. Investments with original maturities of three months or less are classified as cash and cash equivalents, which primarily consist of cash on deposit with several banks and money market funds. Cash and cash equivalents are stated at cost, which approximates market value.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">REVENUE RECOGNITION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Nature of Products and Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We earn revenue from software licenses, royalties, subscription-based services, software services, post-contract customer support (&#8220;PCS&#8221; or &#8220;maintenance&#8221;), hardware, and appraisal services. Revenue is recognized upon transfer of control of promised products or services to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services. We determine revenue recognition through the following steps:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the contract, or contracts, with a customer</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Identification of the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Determination of the transaction price</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Allocation of the transaction price to the performance obligations in the contract</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;padding-bottom:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recognition of revenue when, or as, we satisfy a performance obligation</span></div></td></tr></table><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software arrangements with customers contain multiple performance obligations that range from software licenses, installation, training, and consulting to software modification and customization to meet specific customer needs (services), hosting, and PCS. For these contracts, we account for individual performance obligations separately when they are distinct.  We evaluate whether separate performance obligations can be distinct or should be accounted for as one performance obligation. Arrangements that include software services, such as training or installation, are evaluated to determine whether those services are highly interdependent or interrelated to the product&#8217;s functionality. The transaction price is allocated to the distinct performance obligations on a relative standalone selling price (&#8220;SSP&#8221;) basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts. Revenue is recognized net of allowances for sales adjustments and any taxes collected from customers, which are subsequently remitted to governmental authorities.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Software Arrangements:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Licenses and Royalties</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Many of our software arrangements involve &#8220;off-the-shelf&#8221; software. We recognize the revenue allocable to "off-the-shelf" software licenses and specified upgrades at a point in time when control of the software license transfers to the customer, unless the software is not considered distinct. We consider off-the-shelf software to be distinct when it can be added to an arrangement with minor changes in the underlying code, it can be used by the customer for the customer&#8217;s purpose upon installation, and remaining services such as training are not considered highly interdependent or interrelated to the product's functionality.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services are otherwise not considered distinct, we recognize revenue over time by measuring progress-to-completion. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often implemented over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Software license fees are billed in accordance with the contract terms. Typically, a majority of the fee is due when access to the software license is made available to the customer and the remainder of the fee due over a passage of time stipulated by the contract.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We recognize royalty revenue when the sale occurs under the terms of our third-party royalty arrangements. Currently, our third-party royalties are recognized on an estimated basis and are trued up when we receive notice of amounts we are entitled to receive. We typically receive notice of royalty revenues we are entitled to and billed on a quarterly basis in the quarter immediately following the royalty reporting period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Software Services</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As noted above, some of our software arrangements include services considered highly interdependent or highly interrelated or require significant customization to meet the customer's desired functionality. For these software arrangements, both the software licenses and related software services revenue are not distinct and are recognized over time using the progress-to-completion method. We measure progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts.  Contract fees are typically billed on a milestone basis as defined within contract terms.  We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met. When software services are distinct, the fee allocable to the service element is recognized over the time we perform the services and is billed on a time and material basis.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Post-Contract Customer Support</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our customers generally enter into PCS agreements when they purchase our software licenses. PCS includes telephone support, bug fixes, and rights to upgrades on a when-and-if available basis. PCS is considered distinct when purchased with our software licenses. Our PCS agreements are typically renewable annually. PCS is recognized over time on a straight-line basis over the period the PCS is provided. All significant costs and expenses associated with PCS are expensed as incurred.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Computer Hardware Equipment</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenue allocable to computer hardware equipment is recognized at a point in time when control of the equipment is transferred to the customer.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Subscription-Based Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Subscription-based services consist primarily of revenues derived from SaaS arrangements, typically utilizing the Tyler private cloud, and electronic filing transactions. Revenue from subscription-based services is generally recognized over time on a ratable basis over the contract term, beginning on the date that our service is made available to the customer. Our subscription contracts are generally&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> or longer in length, billed annually in advance, and non-cancelable.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For SaaS arrangements, we evaluate whether the customer has the contractual right to take possession of our software at any time during the hosting period without significant penalty and whether the customer can feasibly maintain the software on the customer&#8217;s hardware or enter into another arrangement with a third-party to host the software. We allocate contract value to each performance obligation of the arrangement that qualifies for treatment as a distinct element based on estimated SSP. We recognize SaaS arrangements services ratably over the term of the arrangement, which range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>ten years</span></span><span style="font-family:inherit;font-size:10pt;">, but are typically for a period of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. For software services associated with certain SaaS arrangements, we have concluded that the services are not distinct, and we recognize the revenue ratably over the remaining contractual period once we have provided the customer access to the software. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Electronic filing transaction fees primarily pertain to documents filed with the courts by attorneys and other third-parties via our e-filing services and retrieval of filed documents via our access services. For each document filed with a court, the filer generally pays a transaction fee and a court filing fee to us and we remit a portion of the transaction fee and the filing fee to the court. We record as revenue the transaction fee, while the portion of the transaction fee remitted to the courts is recorded as cost of revenues as we are acting as a principal in the arrangement. Court filing fees collected on behalf of the courts and remitted to the courts are recorded on a net basis and thus do not affect the statement of comprehensive income. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other transaction-based fees primary relate to online payment services, which are offered with the assistance of third-party vendors. In general, when we are the principal in a transaction based on the factors identified in ASC 606-10-55-36 through 55-40, we record the revenue and related costs on a gross basis. Otherwise, we net the cost of revenue associated with the service against the gross revenue (amount billed to the customer) and record the net amount as revenue.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For e-filing transaction fees and other transaction-based revenues, we have the right to charge the customer an amount that directly corresponds with the value to the customer of our performance to date. Therefore, we recognize revenue for these services over time based on the amount billable to the customer in accordance with the 'as invoiced' practical expedient in ASC 606-10-55-18. In some cases, we are paid on a fixed fee basis and recognize the revenue ratably over the contractual period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs of performing services under subscription-based arrangements are expensed as incurred, except for certain direct and incremental contract origination and set-up costs associated with SaaS arrangements. Such direct and incremental costs are capitalized and amortized ratably over the useful life.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Appraisal Services:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For our property appraisal projects, we recognize revenue using the progress-to-completion method since many of these projects are executed over </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;">-year periods and consist of various unique activities. Appraisal services require a significant level of integration and interdependency with various individual service components; therefore, the service components are not considered distinct. Appraisal services are recognized over time by measuring progress-to-completion primarily using labor hours incurred as it best depicts the transfer of control to the customer which occurs as we incur costs on our contracts. These arrangements are often executed over an extended period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent. Contract fees are typically billed on a milestone basis as defined within contract terms. We record amounts that have been invoiced in accounts receivable and in deferred revenue or revenues, depending on whether the revenue recognition criteria have been met.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Significant Judgments:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our contracts with customers often include multiple performance obligations to a customer. When a software arrangement (license or subscription) includes both software licenses and software services, judgment is required to determine whether the software license is considered distinct and accounted for separately, or not distinct and accounted for together with the software services and recognized over time. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The transaction price is allocated to the separate performance obligations on a relative SSP basis. We determine the SSP based on our overall pricing objectives, taking into consideration market conditions and other factors, including the value of our contracts, the applications sold, customer demographics, and the number and types of users within our contracts.</span><span style="font-family:inherit;font-size:8pt;"> </span><span style="font-family:inherit;font-size:10pt;">We use a range of amounts to estimate SSP when we sell each of the products and services separately and need to determine whether there is a discount to be allocated based on the relative SSP of the various products and services. In instances where SSP is not directly observable, such as when we do not sell the product or service separately, we determine SSP using the expected cost-plus margin approach.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For arrangements that involve significant production, modification or customization of the software, or where software services otherwise cannot be considered distinct, we recognize revenue as control is transferred to the customer over time using progress-to-completion methods. Depending on the contract, we measure progress-to-completion primarily using labor hours incurred, or value added. The progress-to-completion method generally results in the recognition of reasonably consistent profit margins over the life of a contract because we can provide reasonably dependable estimates of contract billings and contract costs. We use the level of profit margin that is most likely to occur on a contract. If the most likely profit margin cannot be precisely determined, the lowest probable level of profit margin in the range of estimates is used until the results can be estimated more precisely. These arrangements are often implemented over an extended time period and occasionally require us to revise total cost estimates. Amounts recognized in revenue are calculated using the progress-to-completion measurement after giving effect to any changes in our cost estimates. Changes to total estimated contract costs, if any, are recorded in the period they are determined. Estimated losses on uncompleted contracts are recorded in the period in which we first determine that a loss is apparent.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Typically, the structure of our arrangements does not give rise to variable consideration.&#160;However, in those instances whereby variable consideration exists, we include in our estimates additional revenue for variable consideration when we believe we have an enforceable right, the amount can be estimated reliably and its realization is probable.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Refer to Note 15 - "Disaggregation of Revenue" for further information, including the economic factors that affect the nature, amount, timing, and uncertainty of revenue and cash flows of our various revenue categories.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Contract Balances:</span><span style="font-family:inherit;font-size:10pt;">&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Accounts receivable and allowance for doubtful accounts and sales adjustments</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition may differ from the timing of invoicing to customers. We record an unbilled receivable when revenue is recognized prior to invoicing, or deferred revenue when revenue is recognized subsequent to invoicing. For multi-year agreements, we generally invoice customers annually at the beginning of each annual coverage period. We record an unbilled receivable related to revenue recognized for on-premises licenses as we have an unconditional right to invoice and receive payment in the future related to those licenses.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from credit risk associated with the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,396</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Provisions for losses and sales adjustments - accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,636</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(569</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,031</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Collection of accounts previously written off</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(545</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(211</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,738</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The allowance for doubtful accounts and sales adjustments reflects our best estimate of probable losses inherent in the accounts receivable balance. We determine the allowance based on known troubled accounts, historical experience, and other currently available evidence. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In connection with our appraisal services contracts and certain software services contracts, we may perform work prior to when the software and services are billable and/or payable pursuant to the contract. Unbilled revenue is not billable at the balance sheet date but is recoverable over the remaining life of the contract through billings made in accordance with contractual agreements. The termination clauses in most of our contracts provide for the payment for the value of products delivered or services performed in the event of early termination. We have historically recorded such unbilled receivables (costs and estimated profit in excess of billings) in connection with (1)&#160;property appraisal services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing normally occurs subsequently and may span another accounting period; (2)&#160;software services contracts accounted for using progress-to-completion method of revenue recognition using labor hours as a measure of progress towards completion in which the services are performed in one accounting period but the billing for the software element of the arrangement may be based upon the specific phase of the implementation; (3)&#160;software revenue for which we have recognized revenue at the point in time when the software is made available to the customer but the billing has not yet been submitted to the customer; (4)&#160;some of our contracts which provide for an amount to be withheld from a progress billing (generally between </span><span style="font-family:inherit;font-size:10pt;"><span>5%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>20%</span></span><span style="font-family:inherit;font-size:10pt;"> retention) until final and satisfactory project completion is achieved; and (5)&#160;in a limited number of cases, extended payment terms, which may be granted to customers with whom we generally have a long-term relationship and favorable collection history.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, total current and long-term accounts receivable, net of allowance for doubtful accounts, was </span><span style="font-family:inherit;font-size:10pt;"><span>$396.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$314.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. We have recorded unbilled receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$134.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$104.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. Included in unbilled receivables are retention receivables of </span><span style="font-family:inherit;font-size:10pt;"><span>$13.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$12.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> at </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively, which become payable upon the completion of the contract or completion of our fieldwork and formal hearings. Unbilled receivables expected to be collected within one year have been included with accounts receivable, current portion in the accompanying consolidated balance sheets. Unbilled receivables and retention receivables expected to be collected past one year have been included with accounts receivable, long-term portion in the accompanying consolidated balance sheets.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Payment terms and conditions vary by contract type, although terms generally include a requirement of payment within </span><span style="font-family:inherit;font-size:10pt;">30</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>90 days</span></span><span style="font-family:inherit;font-size:10pt;">. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with simplified and predictable ways of purchasing our products and services, not to receive financing from our customers or to provide customers with financing. Examples include invoicing at the beginning of a subscription term with revenue recognized ratably over the contract period, and multi-year on-premises term licenses that are invoiced annually with revenue recognized upfront.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Revenue</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of deferred revenue consists of deferred maintenance revenue that has been billed based on contractual terms in the underlying arrangement, with the remaining balance consisting of payments received in advance of revenue being earned under software licensing, subscription-based services, software and appraisal services and hardware installation. Refer to Note 16 - "Deferred Revenue and Performance Obligations" for further information, including deferred revenue by segment and changes in deferred revenue during the period.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Deferred Commissions </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized on a straight-line basis over a period of benefit that we have determined to be&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>seven years</span></span><span style="font-family:inherit;font-size:10pt;">. We utilized the "portfolio approach" practical expedient in ASC 606-10-10-4, which allows entities to apply the guidance to a portfolio of contracts with similar characteristics because the effects on the financial statements of this approach would not differ materially from applying the guidance to individual contracts. Using the 'portfolio approach', we determined the period of benefit by taking into consideration our customer contracts, our technology life-cycle and other factors. Sales commissions for renewal contracts are generally not paid in connection with the renewal of a contract.  In the small number of instances where a commission is paid on a renewal, it is not commensurate with the commission paid on the initial sale and is recognized over the term of renewal, which is generally </span><span style="font-family:inherit;font-size:10pt;"><span>one year</span></span><span style="font-family:inherit;font-size:10pt;">. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of income. Refer to Note 17 - "Deferred Commissions" for further information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prepaid expenses and other current assets include direct and incremental costs such as commissions associated with arrangements for which revenue recognition has been deferred. Such costs are expensed at the time the related revenue is recognized.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;USE OF ESTIMATES</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of our financial statements in conformity with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) requires us 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. Significant items subject to such estimates and assumptions include revenue recognition, determining the nature and timing of satisfaction of performance obligations, determining the SSP of performance obligations, variable consideration, and other obligations such as returns and refunds; loss contingencies; the estimated useful life of deferred commissions; the carrying amount and estimated useful lives of intangible assets; the carrying amount of operating lease right-of-use assets and operating lease liabilities; determining share-based compensation expense; the valuation allowance for receivables; and determining the potential outcome of future tax consequences of events that have been recognized on our consolidated financial statements or tax returns. Actual results could differ from estimates.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">PROPERTY AND EQUIPMENT, NET</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property, equipment and purchased software are recorded at original cost and increased by the cost of any significant improvements after purchase. We expense maintenance and repairs when incurred. Depreciation and amortization is calculated using the straight-line method over the shorter of the asset&#8217;s estimated useful life or the term of the lease in the case of leasehold improvements. For income tax purposes, we use accelerated depreciation methods as allowed by tax laws.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RESEARCH AND DEVELOPMENT COSTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We expensed research and development expense of </span><span style="font-family:inherit;font-size:10pt;"><span>$81.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$63.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$47.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">.&#160;&#160;&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INCOME TAXES</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income taxes are accounted for under the asset and liability method. Deferred taxes arise because of different treatment between financial statement accounting and tax accounting, known as &#8220;temporary differences". We record the tax effect of these temporary differences as &#8220;deferred tax assets&#8221; (generally items that can be used as a tax deduction or credit in the future periods) and &#8220;deferred tax liabilities&#8221; (generally items that we received a tax deduction for, which have not yet been recorded in the income statement). The deferred tax assets and liabilities are measured using enacted tax rules and laws that are expected to be in effect when the temporary differences are expected to be recovered or settled. A valuation allowance would be established to reduce deferred tax assets if it is more likely than not that a deferred tax asset will not be "realized."&#160;On December 22, 2017, the&#160;Tax Cuts&#160;and&#160;Jobs Act&#160;(the &#8220;Tax Act&#8221;) was enacted into law. The Tax Act amends the Internal Revenue Code to reduce tax rates and modify policies, credits and deductions for individuals and businesses. For businesses, the Tax Act reduces the corporate U.S. federal tax rate from a maximum of&#160;35%&#160;to a flat&#160;21% rate and transitions from a worldwide tax system to a territorial tax system. Under ASC 740 Income Taxes, the effects of changes in tax rates and laws are recognized in the period in which the new legislation is enacted. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">SHARE-BASED COMPENSATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have a share-based award plan that provides for the grant of stock options, restricted stock units, and performance share units to key employees, directors and non-employee consultants. Stock options generally vest after </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>six years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant and have a contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span>10</span></span><span style="font-family:inherit;font-size:10pt;"> years. Restricted stock unit grants generally vest ratably over&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Stock Compensation</span><span style="font-family:inherit;font-size:10pt;">. See Note 9 &#8211; &#8220;Share-Based Compensation&#8221; for further information. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">GOODWILL AND OTHER INTANGIBLE ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Goodwill</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price over the fair value of net assets acquired, including identifiable intangible assets, in connection with our business combinations. Upon acquisition, goodwill is assigned to the reporting unit that is expected to benefit from the synergies of the business combination, which is the reporting unit to which the related acquired technology is assigned. A reporting unit is the operating segment, or a business unit one level below that operating segment, for which discrete financial information is prepared and regularly reviewed by executive management. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We assess goodwill for impairment annually as of April 1st, or more frequently whenever events or changes in circumstances indicate its carrying value may not be recoverable. We begin with the qualitative assessment of whether it is more likely than not that a reporting unit's fair value is less than its carrying value before applying the quantitative assessment described below. If it is determined through the evaluation of events or circumstances that the carrying value may not be recoverable, we perform a comparison of the estimated fair value of the reporting unit to which the goodwill has been assigned to the sum of the carrying value of the assets and liabilities of that unit. If the sum of the carrying value of the assets and liabilities of a reporting unit exceeds the estimated fair value of that reporting unit, the carrying value of the reporting unit's goodwill is reduced to its fair value through an adjustment to the goodwill balance, resulting in an impairment charge. The fair values calculated in our impairment tests are determined using discounted cash flow models involving several assumptions. The assumptions that are used are based upon what we believe a hypothetical marketplace participant would use in estimating fair value. We evaluate the reasonableness of the fair value calculations of our reporting units by comparing the total of the fair value of all of our reporting units to our total market capitalization. Our annual goodwill impairment analysis, which we performed qualitatively during the second quarter of </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, did </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;">t result in an impairment charge. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> There have been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> impairments of intangible assets in any of the periods presented.&#160;See Note 4 - "Goodwill and Other Intangible Assets" for additional information.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Other Intangible Assets</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We make judgments about the recoverability of purchased intangible assets other than goodwill whenever events or changes in circumstances indicate that an impairment may exist. Customer base and acquired software each comprise approximately half of our purchased intangible assets other than goodwill. We review our customer turnover each year for indications of impairment. Our customer turnover has historically been very low.&#160;If indications of impairment are determined to exist, we measure the recoverability of assets by a comparison of the carrying amount of the asset to the estimated undiscounted future cash flows expected to be generated by the asset. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets.  There have been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> impairments of intangible assets in any of the periods presented.&#160;&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">IMPAIRMENT OF LONG-LIVED ASSETS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We periodically evaluate whether current facts or circumstances indicate that the carrying value of our property and equipment or other long-lived assets to be held and used may not be recoverable. If such circumstances are determined to exist, we measure the recoverability of assets to be held and used by a comparison of the carrying amount of the asset or appropriate grouping of assets and the estimated undiscounted future cash flows expected to be generated by the assets. If the carrying amount of the assets exceeds their estimated future cash flows, an impairment charge is recognized for the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of would be separately presented in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell and would no longer be depreciated. The assets and liabilities of a disposed group or classified as held for sale would be presented separately in the appropriate asset and liability sections of the balance sheet. There have been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> significant impairments of long-lived assets in any of the periods presented.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">COSTS OF COMPUTER SOFTWARE</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We capitalize software development costs upon the establishment of technological feasibility and prior to the availability of the product for general release to customers. Software development costs primarily consist of personnel costs and rent for related office space. We capitalized approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$4.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> of software development costs in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">. We begin to amortize capitalized costs when a product is available for general release to customers. Amortization expense is determined on a product-by-product basis at a rate not less than straight-line basis over the product&#8217;s remaining estimated economic life of, generally, </span><span style="font-family:inherit;font-size:10pt;">five</span><span style="font-family:inherit;font-size:10pt;"> years. Amortization of software development costs was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$296,000</span></span><span style="font-family:inherit;font-size:10pt;"> in </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, and is included in cost of software license revenue in the accompanying consolidated statements of comprehensive income. We have not capitalized any internal use software development costs in any of the periods presented.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONTINGENT PURCHASE CONSIDERATION</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Contingent future cash payments related to acquisitions are recognized at fair value as of the acquisition date and included in the determination of the acquisition date purchase price. Subsequent changes in the fair value of the contingent future cash payments are recognized in earnings in the period that the change occurs.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">FAIR VALUE OF FINANCIAL INSTRUMENTS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash and cash equivalents, accounts receivables, accounts payables, short-term obligations and certain other assets at cost approximate fair value because of the short maturity of these instruments. The fair value of our revolving line of credit would approximate book value as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, because our interest rates reset approximately every 30 days or less. See Note 6 &#8211; &#8220;Revolving Line of Credit&#8221; for further discussion.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$81.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> in investment grade corporate bonds, municipal bonds and asset-backed securities with maturity dates ranging from </span><span style="font-family:inherit;font-size:10pt;">2020 through 2023</span><span style="font-family:inherit;font-size:10pt;">.&#160;We intend to hold these bonds to maturity and have classified them as such.&#160;We believe cost approximates fair value.&#160;The fair values of these securities are considered Level II as they are based on inputs from quoted prices in markets that are not active or from other observable market data. These investments are included in short-term investments and non-current investments and other assets.&#160;</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we have </span><span style="font-family:inherit;font-size:10pt;"><span>$15.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> invested in convertible preferred stock representing a </span><span style="font-family:inherit;font-size:10pt;"><span>20%</span></span><span style="font-family:inherit;font-size:10pt;"> interest in Record Holdings Pty Limited, a privately held Australian company specializing in digitizing the spoken word in court and legal proceedings. The investment in convertible preferred stock is accounted under the cost method because we do not have the ability to exercise significant influence over the investee and the securities do not have readily determinable fair values. Our investment is carried at cost less any impairment write-downs. Our cost method investments are assessed annually for impairment. We do not reassess the fair value of cost method investments if there are no identified events or changes in circumstances that may have a significant adverse effect on the fair value of the investments. There has been </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> impairment of our cost method investment for the periods presented. This investment is included in non-current investments and other assets in the accompanying consolidated balance sheets.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">CONCENTRATIONS OF CREDIT RISK </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents, accounts receivable from trade customers, and investments in marketable securities. Our cash and cash equivalents primarily consist of operating account balances and money market funds, which are maintained at several major domestic financial institutions and the balances often exceed insured amounts. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had cash and cash equivalents of </span><span style="font-family:inherit;font-size:10pt;"><span>$232.7 million</span></span><span style="font-family:inherit;font-size:10pt;">. We perform periodic evaluations of the credit standing of these financial institutions.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Concentrations of credit risk with respect to receivables are limited due to the size and geographical diversity of our customer base. Historically, our credit losses have not been significant. As a result, we do not believe we have any significant concentrations of credit risk as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We maintain allowances for doubtful accounts, which are provided at the time the revenue is recognized. Since most of our customers are domestic governmental entities, we rarely incur a loss resulting from the inability of a customer to make required payments. Events or changes in circumstances that indicate the carrying amount for the allowances for doubtful accounts may require revision include, but are not limited to, deterioration of a customer&#8217;s financial condition, failure to manage our customer&#8217;s expectations regarding the scope of the services to be delivered, and defects or errors in new versions or enhancements of our software products.</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">LEASES</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We determine if an arrangement is a lease at inception. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, and operating lease liabilities, current and long-term, on our consolidated balance sheets. We currently do not have any finance lease arrangements. </span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Operating lease ROU assets and operating lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date of the lease in determining the present value of future payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives and initial direct costs incurred. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term. Leases with an initial term of 12 months or less are not recorded on the balance sheet; we recognize lease expense for these leases on a straight-line basis over the lease term. We have lease agreements with lease and non-lease components, which are generally accounted for as a single lease component. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">INDEMNIFICATION</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Most of our software license agreements indemnify our customers in the event that the software sold infringes upon the intellectual property rights of a third-party. These agreements typically provide that in such event we will either modify or replace the software so that it becomes non-infringing or procure for the customer the right to use the software. We have recorded no liability associated with these indemnifications, as we are not aware of any pending or threatened infringement actions that are possible losses. We believe the estimated fair value of these intellectual property indemnification clauses is minimal.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have also agreed to indemnify our officers and board members if they are named or threatened to be named as a party to any proceeding by reason of the fact that they acted in such capacity. We maintain directors&#8217; and officers&#8217; liability insurance coverage to protect against any such losses. We have recorded no liability associated with these indemnifications. Because of our insurance coverage, we believe the estimated fair value of these indemnification agreements is minimal.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECLASSIFICATIONS</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Certain amounts for previous years have been reclassified to conform to the current year presentation.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">RECENTLY ADOPTED ACCOUNTING PRONOUNCEMENTS</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Leases.</span><span style="font-family:inherit;font-size:10pt;"> We adopted ASU No. 2016-02, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Leases</span><span style="font-family:inherit;font-size:10pt;"> ("Topic 842") using the transition method that allows us to initially apply the guidance at the adoption date of January 1, 2019, and recognized a cumulative-effect adjustment to the opening balance of retained earnings in the period of adoption. We used the package of practical expedients that allows us to not reassess: (1) lease classification for any expired or existing leases and (2) initial direct costs for any expired or existing leases. We did not elect to use the hindsight application for evaluating the life of the lease arrangement. The impact of adoption is reflected in the financial information herein. For additional details, see Note 11 to our consolidated financial statements.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impact of&#160;Topic 842&#160;on our consolidated balance sheet beginning January 1, 2019, included the recognition of ROU assets and operating lease liabilities, while our accounting for finance leases remained substantially unchanged. We had no finance leases prior to the adoption of&#160;Topic 842 and continue to have none as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amounts recognized at January 1, 2019, for operating leases were as follow (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:589px;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:488px;"/><td style="width:5px;"/><td style="width:9px;"/><td style="width:83px;"/><td style="width:3px;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,633</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,344</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(12,405</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained earnings</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,116</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">NEW ACCOUNTING PRONOUNCEMENTS</span></div><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU 2016-13,&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Financial Instruments -&#160;Credit&#160;Losses,</span>&#160;(&#8220;ASU 2016-13&#8221;). ASU 2016-13 changes the impairment model for most financial assets and certain other instruments, including trade and other receivables, held-to-maturity debt securities and loans, and requires entities to use a new forward-looking expected loss model that will result in the earlier recognition of allowance for losses. This update is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years. Early adoption is permitted for a fiscal year beginning after December 15, 2018, including interim periods within that fiscal year. Entities will apply the standard&#8217;s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. We will adopt the new standard in the first quarter of 2020. We have evaluated the impact of this standard on our consolidated financial statements, including accounting policies, processes and systems. Based on the nature of the Company's customer base and historical nature of losses, we do not expect the impact to be material upon adoption.<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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817421472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DISAGGREGATION OF REVENUE</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tables below show disaggregation of revenue into categories that reflect how economic factors affect the nature, amount, timing, and uncertainty of revenue and cash flows.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Timing of Revenue Recognition</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,305</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107,912</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>978,515</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,188</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,253</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>98,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>836,436</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>69,167</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,075</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>754,053</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recurring Revenue </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of our revenue is comprised of recurring revenues from maintenance and subscriptions. Virtually all of our on-premises software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts. The contract terms for subscription arrangements range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>10</span></span><span style="font-family:inherit;font-size:10pt;"> years but are typically contracted for initial periods of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>690,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,514</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>726,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>295,193</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>58,308</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,757</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>570,645</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>34,424</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>605,069</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>269,400</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55,932</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>330,213</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>502,018</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>29,477</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>531,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>252,690</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,102</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>309,404</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</span></div><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise Software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>386,115</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>327,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,210</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,018</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,369</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,397</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:normal;">Totals</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:76%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferral of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>993,109</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recognition of deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(931,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate amount of transaction price allocated to the remaining performance obligations represents contracted revenue that has not yet been recognized ("Backlog"), which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. Backlog as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.46 billion</span></span><span style="font-family:inherit;font-size:10pt;">, of which we expect to recognize approximately </span><span style="font-family:inherit;font-size:10pt;"><span>49%</span></span><span style="font-family:inherit;font-size:10pt;"> as revenue over the next </span><span style="font-family:inherit;font-size:10pt;"><span>12</span></span><span style="font-family:inherit;font-size:10pt;"> months and the remainder thereafter.</span></div>DEFERRED COMMISSIONS<div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized commensurate with the recognition of associated revenue over a period of benefit that we have determined to be </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>seven years</span></span><span style="font-family:inherit;font-size:10pt;">. Deferred commissions were&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$29.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$21.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, as of December&#160;31, 2019, and 2018 respectively. Amortization expense was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$17.8 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$15.6 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$11.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> for the&#160;</span><span style="font-family:inherit;font-size:10pt;">twelve</span><span style="font-family:inherit;font-size:10pt;"> months ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. There were no indicators of impairment in relation to the costs capitalized for the periods presented. Deferred commissions have been included with prepaid expenses in the accompanying consolidated balance sheets. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of comprehensive income.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a 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> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.19.3.a.u2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>360</ContextCount>
  <ElementCount>451</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>75</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>9</UnitCount>
  <MyReports>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001000 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001000 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ConsolidatedStatementsOfComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1002000 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1002501 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1003000 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1004000 - Statement - Consolidated Statements of Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ConsolidatedStatementsOfShareholdersEquity</Role>
      <ShortName>Consolidated Statements of Shareholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>2101100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>2102100 - Disclosure - ACQUISITIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/Acquisitions</Role>
      <ShortName>ACQUISITIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/PropertyAndEquipmentNet</Role>
      <ShortName>PROPERTY AND EQUIPMENT, NET</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2104100 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssets</Role>
      <ShortName>GOODWILL AND OTHER INTANGIBLE ASSETS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2105100 - Disclosure - ACCRUED LIABILITIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AccruedLiabilities</Role>
      <ShortName>ACCRUED LIABILITIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2106100 - Disclosure - Revolving Line of Credit</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/RevolvingLineOfCredit</Role>
      <ShortName>Revolving Line of Credit</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2107100 - Disclosure - INCOME TAX</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTax</Role>
      <ShortName>INCOME TAX</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2108100 - Disclosure - SHAREHOLDERS??? EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareholdersEquity</Role>
      <ShortName>SHAREHOLDERS??? EQUITY</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2109100 - Disclosure - SHARE-BASED COMPENSATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensation</Role>
      <ShortName>SHARE-BASED COMPENSATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2110100 - Disclosure - EARNINGS PER SHARE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EarningsPerShare</Role>
      <ShortName>EARNINGS PER SHARE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2111100 - Disclosure - LEASES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/Leases</Role>
      <ShortName>LEASES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2112100 - Disclosure - EMPLOYEE BENEFIT PLANS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EmployeeBenefitPlans</Role>
      <ShortName>EMPLOYEE BENEFIT PLANS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2113100 - Disclosure - COMMITMENTS AND CONTINGENCIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/CommitmentsAndContingencies</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2114100 - Disclosure - SEGMENT AND RELATED INFORMATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SegmentAndRelatedInformation</Role>
      <ShortName>SEGMENT AND RELATED INFORMATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2115100 - Disclosure - DISAGGREGATION OF REVENUE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DisaggregationOfRevenue</Role>
      <ShortName>DISAGGREGATION OF REVENUE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2116100 - Disclosure - DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligations</Role>
      <ShortName>DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2117100 - Disclosure - DEFERRED COMMISSIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredCommissions</Role>
      <ShortName>DEFERRED COMMISSIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2118100 - Disclosure - SUBSEQUENT EVENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SubsequentEvents</Role>
      <ShortName>SUBSEQUENT EVENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2119100 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited</Role>
      <ShortName>QUARTERLY FINANCIAL INFORMATION (unaudited)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2201201 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2301302 - Disclosure - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesTables</Role>
      <ShortName>Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2302301 - Disclosure - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AcquisitionsTables</Role>
      <ShortName>Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2303301 - Disclosure - Property and Equipment, Net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/PropertyAndEquipmentNetTables</Role>
      <ShortName>Property and Equipment, Net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2304301 - Disclosure - Goodwill and Other Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Other Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2305301 - Disclosure - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AccruedLiabilitiesTables</Role>
      <ShortName>Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2307301 - Disclosure - Income Tax (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTaxTables</Role>
      <ShortName>Income Tax (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2308301 - Disclosure - Shareholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareholdersEquityTables</Role>
      <ShortName>Shareholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2309301 - Disclosure - Share-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationTables</Role>
      <ShortName>Share-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2310301 - Disclosure - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EarningsPerShareTables</Role>
      <ShortName>Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2311301 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2314301 - Disclosure - Segment and Related Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SegmentAndRelatedInformationTables</Role>
      <ShortName>Segment and Related Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2315301 - Disclosure - Disaggregation of Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DisaggregationOfRevenueTables</Role>
      <ShortName>Disaggregation of Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2316301 - Disclosure - Deferred Revenue and Performance Obligations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsTables</Role>
      <ShortName>Deferred Revenue and Performance Obligations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2319301 - Disclosure - Quarterly Financial Information (unaudited) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedTables</Role>
      <ShortName>Quarterly Financial Information (unaudited) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2401403 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAdditionalInformationDetails</Role>
      <ShortName>Summary of Significant Accounting Policies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2401404 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesAllowancesForDoubtfulAccountsAndSalesAdjustmentsDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2401405 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SummaryOfSignificantAccountingPoliciesScheduleOfNewAccountingPronouncementsDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2402402 - Disclosure - Acquisitions - Narrative (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AcquisitionsNarrativeDetail</Role>
      <ShortName>Acquisitions - Narrative (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2402403 - Disclosure - Acquisitions - Assets and Liabilities Acquired (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AcquisitionsAssetsAndLiabilitiesAcquiredDetails</Role>
      <ShortName>Acquisitions - Assets and Liabilities Acquired (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2402404 - Disclosure - Acquisitions - Pro-forma Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AcquisitionsProFormaInformationDetails</Role>
      <ShortName>Acquisitions - Pro-forma Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2403402 - Disclosure - Property and Equipment, Net - Summary of Property and Equipment, Net (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/PropertyAndEquipmentNetSummaryOfPropertyAndEquipmentNetDetail</Role>
      <ShortName>Property and Equipment, Net - Summary of Property and Equipment, Net (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2403403 - Disclosure - Property and Equipment, Net - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/PropertyAndEquipmentNetAdditionalInformationDetail</Role>
      <ShortName>Property and Equipment, Net - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2404402 - Disclosure - Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfChangesInCarryingAmountOfGoodwillDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets - Summary of Changes in Carrying Amount of Goodwill (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2404403 - Disclosure - Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfOtherIntangibleAssetsAndRelatedAccumulatedAmortizationDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets - Summary of Other Intangible Assets and Related Accumulated Amortization (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2404404 - Disclosure - Goodwill and Other Intangible Assets - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsAdditionalInformationDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2404405 - Disclosure - Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfAllocationOfAcquisitionIntangibleAssetsDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets - Summary of Allocation of Acquisition Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2404406 - Disclosure - Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/GoodwillAndOtherIntangibleAssetsSummaryOfEstimatedAnnualAmortizationExpenseDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2405402 - Disclosure - Accrued Liabilities - Summary of Accrued Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/AccruedLiabilitiesSummaryOfAccruedLiabilitiesDetail</Role>
      <ShortName>Accrued Liabilities - Summary of Accrued Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2406401 - Disclosure - Revolving Line of Credit - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/RevolvingLineOfCreditAdditionalInformationDetail</Role>
      <ShortName>Revolving Line of Credit - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2407402 - Disclosure - Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTaxIncomeTaxProvisionBenefitOnIncomeFromOperationsDetail</Role>
      <ShortName>Income Tax - Income Tax Provision (Benefit) on Income From Operations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2407403 - Disclosure - Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTaxReconciliationOfUSStatutoryIncomeTaxRateToEffectiveIncomeTaxRateDetail</Role>
      <ShortName>Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2407404 - Disclosure - Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTaxScheduleOfDeferredTaxAssetsAndLiabilitiesDetail</Role>
      <ShortName>Income Tax - Schedule of Deferred Tax Assets and Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2407405 - Disclosure - Income Tax - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/IncomeTaxAdditionalInformationDetail</Role>
      <ShortName>Income Tax - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2408402 - Disclosure - Shareholders' Equity - Summary of Activities in Common Stock (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareholdersEquitySummaryOfActivitiesInCommonStockDetail</Role>
      <ShortName>Shareholders' Equity - Summary of Activities in Common Stock (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2408403 - Disclosure - Shareholders' Equity - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareholdersEquityAdditionalInformationDetail</Role>
      <ShortName>Shareholders' Equity - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2409402 - Disclosure - Share-Based Compensation - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationAdditionalInformationDetail</Role>
      <ShortName>Share-Based Compensation - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2409403 - Disclosure - Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationSummaryOfWeightedAverageAssumptionsUsedForOptionsGrantedDetail</Role>
      <ShortName>Share-Based Compensation - Summary of Weighted Average Assumptions Used for Options Granted (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2409404 - Disclosure - Share-Based Compensation - RSU and PSU Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationRsuAndPsuActivityDetails</Role>
      <ShortName>Share-Based Compensation - RSU and PSU Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2409405 - Disclosure - Share-Based Compensation - Stock Option Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationStockOptionActivityDetail</Role>
      <ShortName>Share-Based Compensation - Stock Option Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>2409406 - Disclosure - Share-Based Compensation - Other Information Pertaining to Option Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationOtherInformationPertainingToOptionActivityDetail</Role>
      <ShortName>Share-Based Compensation - Other Information Pertaining to Option Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>2409407 - Disclosure - Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/ShareBasedCompensationSummaryOfShareBasedCompensationExpenseRelatedToShareBasedAwardsDetail</Role>
      <ShortName>Share-Based Compensation - Summary of Share-Based Compensation Expense Related to Share-Based Awards (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>2410402 - Disclosure - Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EarningsPerShareComputationOfBasicEarningsAndDilutedEarningsPerShareDataDetail</Role>
      <ShortName>Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>2410403 - Disclosure - Earnings Per Share - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EarningsPerShareAdditionalInformationDetail</Role>
      <ShortName>Earnings Per Share - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>2411402 - Disclosure - Leases - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesAdditionalInformationDetail</Role>
      <ShortName>Leases - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>2411403 - Disclosure - Leases - Schedule of lease cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesScheduleOfLeaseCostDetails</Role>
      <ShortName>Leases - Schedule of lease cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>2411404 - Disclosure - Leases - Schedule of leases assets and liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesScheduleOfLeasesAssetsAndLiabilitiesDetails</Role>
      <ShortName>Leases - Schedule of leases assets and liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>2411405 - Disclosure - Leases - Schedule of other information related to leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesScheduleOfOtherInformationRelatedToLeasesDetails</Role>
      <ShortName>Leases - Schedule of other information related to leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>2411406 - Disclosure - Leases - Maturity of lease liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesMaturityOfLeaseLiabilitiesDetails</Role>
      <ShortName>Leases - Maturity of lease liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>2411407 - Disclosure - Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumLeaseCommitmentsRelatedToLeaseAgreementsUnderTopic840Detail</Role>
      <ShortName>Leases - Schedule of future minimum lease commitments related to lease agreements under Topic 840 (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>2411408 - Disclosure - Leases - Schedule of future minimum operating rental income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/LeasesScheduleOfFutureMinimumOperatingRentalIncomeDetails</Role>
      <ShortName>Leases - Schedule of future minimum operating rental income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>2412401 - Disclosure - Employee Benefit Plans - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/EmployeeBenefitPlansAdditionalInformationDetail</Role>
      <ShortName>Employee Benefit Plans - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>2413401 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/CommitmentsAndContingenciesAdditionalInformationDetail</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>2414402 - Disclosure - Segment and Related Information - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SegmentAndRelatedInformationAdditionalInformationDetail</Role>
      <ShortName>Segment and Related Information - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>2414403 - Disclosure - Segment and Related Information - Schedule of Segment Revenues and Operations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SegmentAndRelatedInformationScheduleOfSegmentRevenuesAndOperationsDetail</Role>
      <ShortName>Segment and Related Information - Schedule of Segment Revenues and Operations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>2414404 - Disclosure - Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/SegmentAndRelatedInformationReconciliationOfOperatingIncomeFromSegmentsToConsolidatedDetail</Role>
      <ShortName>Segment and Related Information - Reconciliation of Operating Income from Segments to Consolidated (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>2415402 - Disclosure - Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DisaggregationOfRevenueDetails</Role>
      <ShortName>Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/DisaggregationOfRevenueTables</ParentRole>
      <Position>82</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>2416402 - Disclosure - Deferred Revenue and Performance Obligations - Deferred Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsDeferredRevenueDetails</Role>
      <ShortName>Deferred Revenue and Performance Obligations - Deferred Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>2416403 - Disclosure - Deferred Revenue and Performance Obligations - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredRevenueAndPerformanceObligationsNarrativeDetails</Role>
      <ShortName>Deferred Revenue and Performance Obligations - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>2417401 - Disclosure - Deferred Commissions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/DeferredCommissionsDetails</Role>
      <ShortName>Deferred Commissions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>2419402 - Disclosure - QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tylertech.com/role/QuarterlyFinancialInformationUnauditedSummaryOfSelectedFinancialInformationDetail</Role>
      <ShortName>QUARTERLY FINANCIAL INFORMATION (unaudited) - Summary of Selected Financial Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tylertech.com/role/QuarterlyFinancialInformationUnaudited</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="tyl12312019-10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9999.htm</HtmlFileName>
      <LongName>Uncategorized Items - tyl12312019-10k.htm</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/role/uncategorizedFacts</Role>
      <ShortName>Uncategorized Items - tyl12312019-10k.htm</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>87</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="tyl12312019-10k.htm">tyl12312019-10k.htm</File>
    <File>tyl-20191231.xsd</File>
    <File>tyl-20191231_cal.xml</File>
    <File>tyl-20191231_def.xml</File>
    <File>tyl-20191231_lab.xml</File>
    <File>tyl-20191231_pre.xml</File>
    <File>tyl12312019exhibit-23.htm</File>
    <File>tyl12312019exhibit311.htm</File>
    <File>tyl12312019exhibit312.htm</File>
    <File>tyl12312019exhibit321.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>chart-0712ce3e0aa05243830.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/us-gaap/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/srt/2019-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6825558656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - RSU and PSU Activity (Details) - Restricted stock unit and performance stock unit - $ / shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Number of Shares</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Beginning balance, shares</a></td>
<td class="nump">334<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted, shares</a></td>
<td class="nump">256<span></span>
</td>
<td class="nump">336<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested, shares</a></td>
<td class="num">(76)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited, shares</a></td>
<td class="num">(14)<span></span>
</td>
<td class="num">(2)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Ending balance, shares</a></td>
<td class="nump">500<span></span>
</td>
<td class="nump">334<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue', window );">Beginning balance (dollar per share)</a></td>
<td class="nump">$ 221.25<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue', window );">Granted (dollar per share)</a></td>
<td class="nump">241.19<span></span>
</td>
<td class="nump">221.29<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue', window );">Vested (dollar per share)</a></td>
<td class="nump">221.15<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue', window );">Forfeited (dollar per share)</a></td>
<td class="nump">229.75<span></span>
</td>
<td class="nump">229.75<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue', window );">Ending balance (dollar per share)</a></td>
<td class="nump">$ 231.57<span></span>
</td>
<td class="nump">$ 221.25<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited 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://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)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average intrinsic value of award forfeited under share-based payment arrangement. Excludes share and unit 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> -Subparagraph (c)(2)(iii)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average intrinsic value of award granted under share-based payment arrangement. Excludes share and unit 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> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average intrinsic value of nonvested award under share-based payment arrangement. Excludes share and unit 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> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedIntrinsicValueRollForward</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average intrinsic value of award vested under share-based payment arrangement. Excludes share and unit 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> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=tyl_RestrictedStockUnitandPerformanceStockUnitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=tyl_RestrictedStockUnitandPerformanceStockUnitMember</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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823625152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders' Equity - Summary of Activities in Common Stock (Detail) - USD ($)<br> 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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Stock option exercises, Shares</a></td>
<td class="nump">999<span></span>
</td>
<td class="nump">1,126<span></span>
</td>
<td class="nump">1,113<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_TreasuryStockSharesAcquired', window );">Purchases of common stock, Shares</a></td>
<td class="num">(72)<span></span>
</td>
<td class="num">(781)<span></span>
</td>
<td class="num">(44)<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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Employee stock plan purchases, Shares</a></td>
<td class="nump">53<span></span>
</td>
<td class="nump">45<span></span>
</td>
<td class="nump">51<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_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement', window );">Restricted stock units vested, net of withheld shares upon award settlement, Shares</a></td>
<td class="nump">53<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan</a></td>
<td class="nump">$ 96,908<span></span>
</td>
<td class="nump">$ 74,907<span></span>
</td>
<td class="nump">$ 49,845<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_TreasuryStockValueAcquiredCostMethod', window );">Purchases of common stock</a></td>
<td class="num">(14,289)<span></span>
</td>
<td class="num">(150,050)<span></span>
</td>
<td class="num">(6,613)<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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Employee stock plan purchases</a></td>
<td class="nump">9,576<span></span>
</td>
<td class="nump">8,051<span></span>
</td>
<td class="nump">7,044<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_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement', window );">Restricted stock units vested, net of withheld shares upon award settlement</a></td>
<td class="num">$ (5,361)<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_tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other than Options, Vested In Period, Net Of Withheld Shares Upon Award Settlement</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;">tyl_ShareBasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsVestedInPeriodNetOfWithheldSharesUponAwardSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Stock Issued During Period, Value, Restricted Stock Units Vested, Net Of Withheld Shares Upon Award Settlement</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;">tyl_StockIssuedDuringPeriodValueRestrictedStockUnitsVestedNetOfWithheldSharesUponAwardSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 during the period as a result of an employee stock purchase 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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=27012166&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=6877327&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</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=109259400&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=27012166&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=6877327&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 change in value for stock issued during the period as a result of employee stock purchase 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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 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(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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=109259400&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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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=27012166&amp;loc=d3e187085-122770<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> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<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=6877327&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=6877327&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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 during the period and are being held in 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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=27012166&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>83
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842063584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share - Computation of Basic Earnings and Diluted Earnings Per Share Data (Detail) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<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, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract', window );"><strong>Numerator for basic and diluted earnings per share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 46,790<span></span>
</td>
<td class="nump">$ 40,390<span></span>
</td>
<td class="nump">$ 31,999<span></span>
</td>
<td class="nump">$ 27,348<span></span>
</td>
<td class="nump">$ 31,552<span></span>
</td>
<td class="nump">$ 38,924<span></span>
</td>
<td class="nump">$ 39,161<span></span>
</td>
<td class="nump">$ 37,825<span></span>
</td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
<td class="nump">$ 169,571<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_tyl_DenominatorAbstract', window );"><strong>Denominator:</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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted-average basic common shares outstanding</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="nump">38,640<span></span>
</td>
<td class="nump">38,445<span></span>
</td>
<td class="nump">37,273<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_tyl_AssumedConversionofDilutiveSecuritiesAbstract', window );"><strong>Assumed conversion of dilutive securities:</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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Stock options (in 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="nump">1,465<span></span>
</td>
<td class="nump">1,678<span></span>
</td>
<td class="nump">1,973<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Denominator for diluted earnings per share - Adjusted weighted-average shares</a></td>
<td class="nump">40,736<span></span>
</td>
<td class="nump">40,280<span></span>
</td>
<td class="nump">39,813<span></span>
</td>
<td class="nump">39,585<span></span>
</td>
<td class="nump">39,891<span></span>
</td>
<td class="nump">40,528<span></span>
</td>
<td class="nump">40,224<span></span>
</td>
<td class="nump">39,836<span></span>
</td>
<td class="nump">40,105<span></span>
</td>
<td class="nump">40,123<span></span>
</td>
<td class="nump">39,246<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_EarningsPerShareBasicAndDilutedAbstract', window );"><strong>Earnings per common share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (USD per share)</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="nump">$ 3.79<span></span>
</td>
<td class="nump">$ 3.84<span></span>
</td>
<td class="nump">$ 4.55<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (USD per share)</a></td>
<td class="nump">$ 1.15<span></span>
</td>
<td class="nump">$ 1.00<span></span>
</td>
<td class="nump">$ 0.80<span></span>
</td>
<td class="nump">$ 0.69<span></span>
</td>
<td class="nump">$ 0.79<span></span>
</td>
<td class="nump">$ 0.96<span></span>
</td>
<td class="nump">$ 0.97<span></span>
</td>
<td class="nump">$ 0.95<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<span></span>
</td>
<td class="nump">$ 4.32<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_AssumedConversionofDilutiveSecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Assumed Conversion of Dilutive Securities [Abstract]</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;">tyl_AssumedConversionofDilutiveSecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_DenominatorAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Denominator [Abstract]</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;">tyl_DenominatorAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Numerator of Basic and Diluted Earnings Per Share [Abstract]</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;">tyl_NumeratorofBasicandDilutedEarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: 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=117327953&amp;loc=d3e4984-109258<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<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> -URI http://asc.fasb.org/extlink&amp;oid=109234566&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 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: 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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: 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=117326831&amp;loc=SL5780133-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_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EarningsPerShareBasicAndDilutedAbstract</td>
</tr>
<tr>
<td style="padding-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_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=117327953&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: 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(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<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=117326831&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 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1500-109256<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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=118930883&amp;loc=SL7669619-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: 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=118930883&amp;loc=SL7669625-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: 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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: 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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&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 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&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://fasb.org/us-gaap/role/ref/legacyRef<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=117326831&amp;loc=d3e1448-109256<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 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>84
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842013504">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Schedule of New Accounting Pronouncements (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Jan. 01, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">$ 18,992<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="num">(6,387)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, long-term</a></td>
<td class="num">(16,822)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="num">$ (917,336)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (771,925)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member', window );">Accounting Standards Update 2016-02</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,344)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, long-term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,405)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (1,116)<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_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems</td>
</tr>
<tr>
<td style="padding-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_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=77888419&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_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=77888419&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=77888419&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_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=6877327&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)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member</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>85
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6847722416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment, Net - Summary of Property and Equipment, Net (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 284,444<span></span>
</td>
<td class="nump">$ 244,524<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation and amortization</a></td>
<td class="num">(112,583)<span></span>
</td>
<td class="num">(89,347)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">171,861<span></span>
</td>
<td class="nump">155,177<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_LandMember', window );">Land</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">18,653<span></span>
</td>
<td class="nump">9,958<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=tyl_BuildingAndLeaseholdImprovementsMember', window );">Building and leasehold improvements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 137,448<span></span>
</td>
<td class="nump">122,241<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=tyl_BuildingAndLeaseholdImprovementsMember', window );">Building and leasehold improvements | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=tyl_BuildingAndLeaseholdImprovementsMember', window );">Building and leasehold improvements | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">39 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=tyl_ComputerEquipmentAndPurchasedSoftwareMember', window );">Computer equipment and purchased software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 99,435<span></span>
</td>
<td class="nump">84,649<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=tyl_ComputerEquipmentAndPurchasedSoftwareMember', window );">Computer equipment and purchased software | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=tyl_ComputerEquipmentAndPurchasedSoftwareMember', window );">Computer equipment and purchased software | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 28,506<span></span>
</td>
<td class="nump">27,238<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_FurnitureAndFixturesMember', window );">Furniture and fixtures | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember', window );">Transportation equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 402<span></span>
</td>
<td class="nump">$ 438<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_TransportationEquipmentMember', window );">Transportation equipment | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment, Useful lives</a></td>
<td class="text">5 years<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_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-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_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=6877327&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=119400593&amp;loc=d3e572229-122910<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(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LandMember</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=tyl_BuildingAndLeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_BuildingAndLeaseholdImprovementsMember</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=tyl_ComputerEquipmentAndPurchasedSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_ComputerEquipmentAndPurchasedSoftwareMember</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_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FurnitureAndFixturesMember</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_TransportationEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TransportationEquipmentMember</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>86
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842651840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive 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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
<td class="nump">$ 840,899<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_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">569,527<span></span>
</td>
<td class="nump">495,704<span></span>
</td>
<td class="nump">441,522<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">516,900<span></span>
</td>
<td class="nump">439,578<span></span>
</td>
<td class="nump">399,377<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">257,746<span></span>
</td>
<td class="nump">207,605<span></span>
</td>
<td class="nump">175,914<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_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost', window );">Research and development expense</a></td>
<td class="nump">81,342<span></span>
</td>
<td class="nump">63,264<span></span>
</td>
<td class="nump">47,324<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_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets', window );">Amortization of customer and trade name intangibles</a></td>
<td class="nump">21,445<span></span>
</td>
<td class="nump">16,217<span></span>
</td>
<td class="nump">13,381<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">156,367<span></span>
</td>
<td class="nump">152,492<span></span>
</td>
<td class="nump">162,758<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_OtherNonoperatingIncomeExpense', window );">Other income, net</a></td>
<td class="nump">3,471<span></span>
</td>
<td class="nump">3,378<span></span>
</td>
<td class="nump">698<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">159,838<span></span>
</td>
<td class="nump">155,870<span></span>
</td>
<td class="nump">163,456<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision (benefit)</a></td>
<td class="nump">13,311<span></span>
</td>
<td class="nump">8,408<span></span>
</td>
<td class="num">(6,115)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 146,527<span></span>
</td>
<td class="nump">$ 147,462<span></span>
</td>
<td class="nump">$ 169,571<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per common share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (USD per share)</a></td>
<td class="nump">$ 3.79<span></span>
</td>
<td class="nump">$ 3.84<span></span>
</td>
<td class="nump">$ 4.55<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (USD per share)</a></td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.68<span></span>
</td>
<td class="nump">$ 4.32<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_ProductOrServiceAxis=tyl_SoftwareLicensesandRoyaltiesMember', window );">Software licenses and royalties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">$ 100,205<span></span>
</td>
<td class="nump">$ 93,441<span></span>
</td>
<td class="nump">$ 86,242<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_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">3,938<span></span>
</td>
<td class="nump">3,802<span></span>
</td>
<td class="nump">3,321<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">296,352<span></span>
</td>
<td class="nump">220,547<span></span>
</td>
<td class="nump">172,176<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">213,061<span></span>
</td>
<td class="nump">191,269<span></span>
</td>
<td class="nump">180,460<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">430,318<span></span>
</td>
<td class="nump">384,521<span></span>
</td>
<td class="nump">359,319<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_ProductOrServiceAxis=tyl_AcquiredSoftwareMember', window );">Acquired software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">30,642<span></span>
</td>
<td class="nump">22,972<span></span>
</td>
<td class="nump">21,686<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_ProductOrServiceAxis=tyl_SoftwareServicesMaintenanceandSubscriptionsMember', window );">Software services, maintenance and subscriptions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">502,138<span></span>
</td>
<td class="nump">438,923<span></span>
</td>
<td class="nump">387,634<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">15,337<span></span>
</td>
<td class="nump">14,299<span></span>
</td>
<td class="nump">16,286<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_ProductOrServiceAxis=tyl_HardwareandOtherMember', window );">Hardware and other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">23,012<span></span>
</td>
<td class="nump">23,658<span></span>
</td>
<td class="nump">17,679<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_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Total cost of revenues</a></td>
<td class="nump">$ 17,472<span></span>
</td>
<td class="nump">$ 15,708<span></span>
</td>
<td class="nump">$ 12,595<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_AmortizationofCustomerandTradeNamesIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amortization of Customer and Trade Names Intangible Assets</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;">tyl_AmortizationofCustomerandTradeNamesIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_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://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=116634182&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_CostOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CostOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: 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=117327953&amp;loc=d3e4984-109258<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<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> -URI http://asc.fasb.org/extlink&amp;oid=109234566&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 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: 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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: 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=117326831&amp;loc=SL5780133-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_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=117327953&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&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 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: 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(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<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=117326831&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 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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=116634182&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_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://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=68072869&amp;loc=d3e41242-110953<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(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&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 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=116637232&amp;loc=SL114874131-224263<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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: 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=26873400&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 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=118930883&amp;loc=SL7669619-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: 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=118930883&amp;loc=SL7669625-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: 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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: 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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=116634182&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_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Research and development expense during the period related to the costs of developing and achieving technological feasibility of a computer software product to be sold, leased, or otherwise marketed.</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 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpenseSoftwareExcludingAcquiredInProcessCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: 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=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68048583&amp;loc=d3e3636-108311<br><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.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&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_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tyl_SoftwareLicensesandRoyaltiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_SoftwareLicensesandRoyaltiesMember</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=us-gaap_SubscriptionAndCirculationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_SubscriptionAndCirculationMember</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=us-gaap_TechnologyServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_TechnologyServiceMember</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=us-gaap_MaintenanceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_MaintenanceMember</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=tyl_AcquiredSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_AcquiredSoftwareMember</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=tyl_SoftwareServicesMaintenanceandSubscriptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_SoftwareServicesMaintenanceandSubscriptionsMember</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=tyl_AppraisalServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_AppraisalServicesMember</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=tyl_HardwareandOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_HardwareandOtherMember</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>87
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817316176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Accounts, Notes, Loans and Financing Receivable</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the changes in the allowances for doubtful accounts and sales adjustments (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,396</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Provisions for losses and sales adjustments - accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,636</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(569</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,031</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Collection of accounts previously written off</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(545</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(211</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,738</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,647</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Schedule of New Accounting Pronouncements and Changes in Accounting Principles</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amounts recognized at January 1, 2019, for operating leases were as follow (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:589px;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:488px;"/><td style="width:5px;"/><td style="width:9px;"/><td style="width:83px;"/><td style="width:3px;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,633</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,344</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease liabilities, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(12,405</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Retained earnings</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,116</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.</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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=116846552&amp;loc=d3e765-108305<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.10-01.(b)(6))<br> -URI http://asc.fasb.org/extlink&amp;oid=27015980&amp;loc=d3e46468-122699<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=116846552&amp;loc=d3e725-108305<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=109234566&amp;loc=d3e22583-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_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830979728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEFERRED COMMISSIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">DEFERRED COMMISSIONS</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DISAGGREGATION OF REVENUE</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tables below show disaggregation of revenue into categories that reflect how economic factors affect the nature, amount, timing, and uncertainty of revenue and cash flows.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Timing of Revenue Recognition</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Timing of revenue recognition by revenue category during the period is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>84,900</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,305</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>100,205</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>296,352</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>213,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>430,318</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,479</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107,912</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>978,515</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,188</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,253</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>93,441</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>220,547</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>191,269</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>384,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>21,846</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>98,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>836,436</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:97.4074074074074%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:50%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred at a point in time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Products and services transferred over time</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Revenues:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software licenses and royalties</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>69,167</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,075</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,242</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Subscriptions</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>172,176</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>180,460</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Maintenance</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,319</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal services</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,023</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Hardware and other</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,679</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>86,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>754,053</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Recurring Revenue </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The majority of our revenue is comprised of recurring revenues from maintenance and subscriptions. Virtually all of our on-premises software clients contract with us for maintenance and support, which provides us with a significant source of recurring revenue. We generally provide maintenance and support for our on-premises clients under annual, or in some cases, multi-year contracts. The contract terms for subscription arrangements range from </span><span style="font-family:inherit;font-size:10pt;">one</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>10</span></span><span style="font-family:inherit;font-size:10pt;"> years but are typically contracted for initial periods of </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;">. Non-recurring revenues are derived from all other revenue categories.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Recurring revenues and non-recurring revenues recognized during the period are as follows:</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>690,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>36,514</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>726,670</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>295,193</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>58,308</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,256</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>359,757</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(15,496</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,000,845</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>94,822</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,240</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,086,427</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-left:4px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>570,645</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>34,424</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>605,069</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>269,400</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55,932</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,881</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>330,213</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(13,155</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>853,200</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>90,356</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,274</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>935,282</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Totals</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recurring revenues</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>502,018</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>29,477</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>531,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-recurring revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>252,690</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,102</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,612</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>309,404</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intercompany</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(10,425</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total revenues</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>765,133</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>81,579</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,813</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>840,899</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">DEFERRED REVENUE AND PERFORMANCE OBLIGATIONS</span></div><div style="line-height:120%;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred revenue, including long-term, by segment is as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70.18518518518519%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Enterprise Software</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>386,115</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>327,521</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Appraisal&#160;and&#160;Tax</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,210</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,018</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Corporate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,369</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,397</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:normal;">Totals</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Changes in total deferred revenue, including long-term, were as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:70%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:76%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at beginning of year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>350,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferral of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>993,109</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Recognition of deferred revenue</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(931,351</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Balance at end of year</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>412,694</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Transaction Price Allocated to the Remaining Performance Obligations</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate amount of transaction price allocated to the remaining performance obligations represents contracted revenue that has not yet been recognized ("Backlog"), which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods. Backlog as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.46 billion</span></span><span style="font-family:inherit;font-size:10pt;">, of which we expect to recognize approximately </span><span style="font-family:inherit;font-size:10pt;"><span>49%</span></span><span style="font-family:inherit;font-size:10pt;"> as revenue over the next </span><span style="font-family:inherit;font-size:10pt;"><span>12</span></span><span style="font-family:inherit;font-size:10pt;"> months and the remainder thereafter.</span></div>DEFERRED COMMISSIONS<div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Sales commissions earned by our sales force are considered incremental and recoverable costs of obtaining a contract with a customer. Sales commissions for initial contracts are deferred and then amortized commensurate with the recognition of associated revenue over a period of benefit that we have determined to be </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>seven years</span></span><span style="font-family:inherit;font-size:10pt;">. Deferred commissions were&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$29.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$21.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, as of December&#160;31, 2019, and 2018 respectively. Amortization expense was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$17.8 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$15.6 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$11.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> for the&#160;</span><span style="font-family:inherit;font-size:10pt;">twelve</span><span style="font-family:inherit;font-size:10pt;"> months ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. There were no indicators of impairment in relation to the costs capitalized for the periods presented. Deferred commissions have been included with prepaid expenses in the accompanying consolidated balance sheets. Amortization expense related to deferred commissions is included in selling, general and administrative expenses in the accompanying consolidated statements of comprehensive income.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a 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> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842073232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Shareholders' Equity - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss)</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Treasury Stock</div></th>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2016</a></td>
<td class="nump">$ 934,541<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">$ 556,663<span></span>
</td>
<td class="num">$ (46)<span></span>
</td>
<td class="nump">$ 454,892<span></span>
</td>
<td class="num">$ (77,449)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2016</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,148<span></span>
</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,382<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</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>
</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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">169,571<span></span>
</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">169,571<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan</a></td>
<td class="nump">$ 49,845<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,174<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,671<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan, shares</a></td>
<td class="nump">1,113<span></span>
</td>
<td class="text">&#160;<span></span>
</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,113<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation</a></td>
<td class="nump">$ 37,348<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37,348<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of shares pursuant to employee stock purchase plan</a></td>
<td class="nump">$ 7,044<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,682<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,362<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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of shares pursuant to employee stock purchase plan, shares</a></td>
<td class="nump">51<span></span>
</td>
<td class="text">&#160;<span></span>
</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">51<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_TreasuryStockValueAcquiredCostMethod', window );">Treasury stock purchases</a></td>
<td class="num">$ (6,613)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (6,613)<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_TreasuryStockSharesAcquired', window );">Treasury stock purchases, shares</a></td>
<td class="num">(44)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(44)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2017</a></td>
<td class="nump">$ 1,191,736<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">626,867<span></span>
</td>
<td class="num">(46)<span></span>
</td>
<td class="nump">624,463<span></span>
</td>
<td class="num">$ (60,029)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2017</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,148<span></span>
</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">10,262<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">147,462<span></span>
</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">147,462<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan</a></td>
<td class="nump">$ 74,907<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44,458<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,449<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan, shares</a></td>
<td class="nump">1,126<span></span>
</td>
<td class="text">&#160;<span></span>
</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,126<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation</a></td>
<td class="nump">$ 52,740<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,740<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of shares pursuant to employee stock purchase plan</a></td>
<td class="nump">$ 8,051<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,370<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 681<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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of shares pursuant to employee stock purchase plan, shares</a></td>
<td class="nump">45<span></span>
</td>
<td class="text">&#160;<span></span>
</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">45<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_TreasuryStockValueAcquiredCostMethod', window );">Treasury stock purchases</a></td>
<td class="num">$ (150,050)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (150,050)<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_TreasuryStockSharesAcquired', window );">Treasury stock purchases, shares</a></td>
<td class="num">(781)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(781)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2018</a></td>
<td class="nump">$ 1,324,846<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">731,435<span></span>
</td>
<td class="num">(46)<span></span>
</td>
<td class="nump">771,925<span></span>
</td>
<td class="num">$ (178,949)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2018</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,148<span></span>
</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">9,872<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</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>
</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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">146,527<span></span>
</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">146,527<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan</a></td>
<td class="nump">$ 96,908<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(52,833)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 149,741<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of shares pursuant to stock compensation plan, shares</a></td>
<td class="nump">999<span></span>
</td>
<td class="text">&#160;<span></span>
</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,075<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Employee taxes paid for withheld shares for taxes upon equity award</a></td>
<td class="num">$ (5,361)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,361)<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Employee taxes paid for withheld shares for taxes upon equity award, 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="num">(23)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation</a></td>
<td class="nump">59,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of shares pursuant to employee stock purchase plan</a></td>
<td class="nump">$ 9,576<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">909<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,667<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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of shares pursuant to employee stock purchase plan, shares</a></td>
<td class="nump">53<span></span>
</td>
<td class="text">&#160;<span></span>
</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">53<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_TreasuryStockValueAcquiredCostMethod', window );">Treasury stock purchases</a></td>
<td class="num">$ (14,289)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (14,289)<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_TreasuryStockSharesAcquired', window );">Treasury stock purchases, shares</a></td>
<td class="num">(72)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(72)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">$ 1,617,058<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">$ 739,478<span></span>
</td>
<td class="num">$ (46)<span></span>
</td>
<td class="nump">$ 917,336<span></span>
</td>
<td class="num">$ (40,191)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,148<span></span>
</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">8,839<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 decrease to equity for grantee's tax withholding obligation for 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>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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 to additional paid-in capital (APIC) for recognition of cost for 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 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11149-113907<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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-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 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116855982&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=118930883&amp;loc=SL7669619-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: 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=118930883&amp;loc=SL7669625-108580<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: 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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: 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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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_SharesIssued</td>
</tr>
<tr>
<td style="padding-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_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle grantee's tax withholding obligation for 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 during the period as a result of an employee stock purchase 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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=27012166&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=6877327&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</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=109259400&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=27012166&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=6877327&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 change in value for stock issued during the period as a result of employee stock purchase 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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 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(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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=109259400&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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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=27012166&amp;loc=d3e187085-122770<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> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<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=6877327&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=6877327&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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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=27010918&amp;loc=d3e74512-122707<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(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&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(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 during the period and are being held in 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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=27012166&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=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>90
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6829787088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share - Additional Information (Detail) - 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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive securities excluded from computation of earnings per share, amount</a></td>
<td class="nump">633<span></span>
</td>
<td class="nump">888<span></span>
</td>
<td class="nump">1,343<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6846107808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share-Based Compensation - Stock Option Activity (Detail) - 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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Number of Shares</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding Beginning Balance (in shares)</a></td>
<td class="nump">4,092<span></span>
</td>
<td class="nump">4,817<span></span>
</td>
<td class="nump">5,156<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">162<span></span>
</td>
<td class="nump">432<span></span>
</td>
<td class="nump">824<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares)</a></td>
<td class="num">(999)<span></span>
</td>
<td class="num">(1,126)<span></span>
</td>
<td class="num">(1,113)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(29)<span></span>
</td>
<td class="num">(31)<span></span>
</td>
<td class="num">(50)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding Ending Balance (in shares)</a></td>
<td class="nump">3,226<span></span>
</td>
<td class="nump">4,092<span></span>
</td>
<td class="nump">4,817<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable (in shares)</a></td>
<td class="nump">2,067<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted Average Exercise Price</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding Beginning Balance (in dollar per share)</a></td>
<td class="nump">$ 129.51<span></span>
</td>
<td class="nump">$ 107.91<span></span>
</td>
<td class="nump">$ 83.64<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (in dollars per share)</a></td>
<td class="nump">251.58<span></span>
</td>
<td class="nump">208.21<span></span>
</td>
<td class="nump">176.26<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (in dollars per share)</a></td>
<td class="nump">96.92<span></span>
</td>
<td class="nump">66.53<span></span>
</td>
<td class="nump">44.80<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Forfeited (in dollars per share)</a></td>
<td class="nump">174.54<span></span>
</td>
<td class="nump">158.80<span></span>
</td>
<td class="nump">134.83<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding Ending Balance (in dollars per share)</a></td>
<td class="nump">145.27<span></span>
</td>
<td class="nump">$ 129.51<span></span>
</td>
<td class="nump">$ 107.91<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable (in dollars per share)</a></td>
<td class="nump">$ 121.07<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Life (Years), Outstanding</a></td>
<td class="text">6 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Life (Years), Exercisable</a></td>
<td class="text">6 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate Intrinsic Value, Outstanding</a></td>
<td class="nump">$ 499,124<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Aggregate Intrinsic Value, Exercisable</a></td>
<td class="nump">$ 369,938<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_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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="padding-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=116856206&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_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=116856206&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=116856206&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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=116856206&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=27012166&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=6877327&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=6877327&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=109259400&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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817408272">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Shareholders' Equity - Additional Information (Detail)<br> shares in Millions</strong></div></th>
<th class="th">
<div>Feb. 19, 2020 </div>
<div>shares</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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class Of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased', window );">Number of shares authorized to be repurchased, shares</a></td>
<td class="nump">2.6<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_ClassOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfStockLineItems</td>
</tr>
<tr>
<td style="padding-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_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 authorized to be repurchased by an entity's Board of Directors under a stock repurchase 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_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased</td>
</tr>
<tr>
<td style="padding-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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</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>93
<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>94
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6842436688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES - Allowances for Doubtful Accounts and Sales Adjustments (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, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward', window );"><strong>Accounts Receivable, Allowance for Credit Loss [Roll Forward]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Balance at beginning of year</a></td>
<td class="nump">$ 4,647<span></span>
</td>
<td class="nump">$ 5,427<span></span>
</td>
<td class="nump">$ 3,396<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_ProvisionForDoubtfulAccounts', window );">Provisions for losses and sales adjustments - accounts receivable</a></td>
<td class="nump">1,636<span></span>
</td>
<td class="num">(569)<span></span>
</td>
<td class="nump">2,031<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_AllowanceForDoubtfulAccountsReceivableRecoveries', window );">Collection of accounts previously written off</a></td>
<td class="num">(545)<span></span>
</td>
<td class="num">(211)<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_AllowanceForDoubtfulAccountsReceivable', window );">Balance at end of year</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,647<span></span>
</td>
<td class="nump">$ 5,427<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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, allowance for losses</a></td>
<td class="nump">$ 5,738<span></span>
</td>
<td class="nump">$ 4,647<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_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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.</p></div>
<a 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&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 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&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 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br><br>Reference 4: 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=118955202&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_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=6877327&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=118936363&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=118955202&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_AllowanceForDoubtfulAccountsReceivableRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allowance for credit loss on accounts receivable, from recovery.</p></div>
<a 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 (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AllowanceForDoubtfulAccountsReceivableRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward</td>
</tr>
<tr>
<td style="padding-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_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=119407570&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=116634182&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821590304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Pro-forma Information (Details) - MicroPact - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaRevenue', window );">Revenues</a></td>
<td class="nump">$ 1,098,226<span></span>
</td>
<td class="nump">$ 1,009,427<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_BusinessAcquisitionsProFormaNetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 146,200<span></span>
</td>
<td class="nump">$ 146,998<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_BusinessAcquisitionProFormaEarningsPerShareBasic', window );">Basic earnings per share (usd per share)</a></td>
<td class="nump">$ 3.78<span></span>
</td>
<td class="nump">$ 3.82<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_BusinessAcquisitionProFormaEarningsPerShareDiluted', window );">Diluted earnings per share (usd per share)</a></td>
<td class="nump">$ 3.65<span></span>
</td>
<td class="nump">$ 3.66<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionProFormaEarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a 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 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessAcquisitionsProFormaRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of 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 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessAcquisitionAxis=tyl_MPHoldingsParentInc.dbaMicroPactMember</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>96
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6850552976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment and Related Information - Schedule of Segment Revenues and Operations (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<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, 2018</div></th>
<th class="th"><div>Sep. 30, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</a></td>
<td class="nump">$ 288,837<span></span>
</td>
<td class="nump">$ 275,400<span></span>
</td>
<td class="nump">$ 275,124<span></span>
</td>
<td class="nump">$ 247,066<span></span>
</td>
<td class="nump">$ 241,981<span></span>
</td>
<td class="nump">$ 236,067<span></span>
</td>
<td class="nump">$ 236,060<span></span>
</td>
<td class="nump">$ 221,174<span></span>
</td>
<td class="nump">$ 1,086,427<span></span>
</td>
<td class="nump">$ 935,282<span></span>
</td>
<td class="nump">$ 840,899<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</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="nump">76,672<span></span>
</td>
<td class="nump">61,759<span></span>
</td>
<td class="nump">53,395<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_OperatingIncomeLoss', window );">Total segment operating income</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="nump">156,367<span></span>
</td>
<td class="nump">152,492<span></span>
</td>
<td class="nump">162,758<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_tyl_SegmentReportingInformationCapitalExpenditures', window );">Capital expenditures</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="nump">38,098<span></span>
</td>
<td class="nump">25,132<span></span>
</td>
<td class="nump">45,618<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_Assets', window );">Total assets</a></td>
<td class="nump">2,191,614<span></span>
</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,790,963<span></span>
</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">2,191,614<span></span>
</td>
<td class="nump">1,790,963<span></span>
</td>
<td class="nump">1,611,351<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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Intercompany</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<span></span>
</td>
<td class="num">(10,425)<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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Intercompany | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(15,496)<span></span>
</td>
<td class="num">(13,155)<span></span>
</td>
<td class="num">(10,425)<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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Intercompany | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">1,000,845<span></span>
</td>
<td class="nump">853,200<span></span>
</td>
<td class="nump">765,133<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</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="nump">64,289<span></span>
</td>
<td class="nump">50,130<span></span>
</td>
<td class="nump">43,987<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_OperatingIncomeLoss', window );">Total segment operating income</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="nump">261,494<span></span>
</td>
<td class="nump">237,159<span></span>
</td>
<td class="nump">229,001<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_tyl_SegmentReportingInformationCapitalExpenditures', window );">Capital expenditures</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="nump">19,335<span></span>
</td>
<td class="nump">13,973<span></span>
</td>
<td class="nump">28,096<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_Assets', window );">Total assets</a></td>
<td class="nump">834,010<span></span>
</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">556,100<span></span>
</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">834,010<span></span>
</td>
<td class="nump">556,100<span></span>
</td>
<td class="nump">365,736<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">94,822<span></span>
</td>
<td class="nump">90,356<span></span>
</td>
<td class="nump">81,579<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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</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="nump">926<span></span>
</td>
<td class="nump">914<span></span>
</td>
<td class="nump">760<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_OperatingIncomeLoss', window );">Total segment operating income</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="nump">20,789<span></span>
</td>
<td class="nump">23,094<span></span>
</td>
<td class="nump">20,788<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_tyl_SegmentReportingInformationCapitalExpenditures', window );">Capital expenditures</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="nump">8,384<span></span>
</td>
<td class="nump">782<span></span>
</td>
<td class="nump">1,181<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_Assets', window );">Total assets</a></td>
<td class="nump">90,536<span></span>
</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">63,670<span></span>
</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">90,536<span></span>
</td>
<td class="nump">63,670<span></span>
</td>
<td class="nump">46,279<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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember', window );">Corporate and Elimination</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="num">(9,240)<span></span>
</td>
<td class="num">(8,274)<span></span>
</td>
<td class="num">(5,813)<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization expense</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="nump">11,457<span></span>
</td>
<td class="nump">10,715<span></span>
</td>
<td class="nump">8,648<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_OperatingIncomeLoss', window );">Total segment operating income</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="num">(73,829)<span></span>
</td>
<td class="num">(68,572)<span></span>
</td>
<td class="num">(51,964)<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_tyl_SegmentReportingInformationCapitalExpenditures', window );">Capital expenditures</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="nump">10,379<span></span>
</td>
<td class="nump">10,377<span></span>
</td>
<td class="nump">16,341<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_Assets', window );">Total assets</a></td>
<td class="nump">$ 1,267,068<span></span>
</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,171,193<span></span>
</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,267,068<span></span>
</td>
<td class="nump">1,171,193<span></span>
</td>
<td class="nump">1,199,336<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_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember', window );">Operating Segments And Corporate Non Segment</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_OperatingIncomeLoss', window );">Total segment operating income</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="nump">208,454<span></span>
</td>
<td class="nump">191,681<span></span>
</td>
<td class="nump">197,825<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">100,205<span></span>
</td>
<td class="nump">93,441<span></span>
</td>
<td class="nump">86,242<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">92,567<span></span>
</td>
<td class="nump">83,735<span></span>
</td>
<td class="nump">78,388<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">7,638<span></span>
</td>
<td class="nump">9,706<span></span>
</td>
<td class="nump">7,854<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_ProductOrServiceAxis=us-gaap_LicenseMember', window );">Software licenses and royalties | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">296,352<span></span>
</td>
<td class="nump">220,547<span></span>
</td>
<td class="nump">172,176<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">285,092<span></span>
</td>
<td class="nump">210,740<span></span>
</td>
<td class="nump">164,317<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">11,260<span></span>
</td>
<td class="nump">9,807<span></span>
</td>
<td class="nump">7,859<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_ProductOrServiceAxis=us-gaap_SubscriptionAndCirculationMember', window );">Subscriptions | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">213,061<span></span>
</td>
<td class="nump">191,269<span></span>
</td>
<td class="nump">180,460<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">185,892<span></span>
</td>
<td class="nump">166,921<span></span>
</td>
<td class="nump">161,245<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">27,169<span></span>
</td>
<td class="nump">24,348<span></span>
</td>
<td class="nump">19,215<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_ProductOrServiceAxis=us-gaap_TechnologyServiceMember', window );">Software services | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">430,318<span></span>
</td>
<td class="nump">384,521<span></span>
</td>
<td class="nump">359,319<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">405,063<span></span>
</td>
<td class="nump">359,904<span></span>
</td>
<td class="nump">337,701<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">25,255<span></span>
</td>
<td class="nump">24,617<span></span>
</td>
<td class="nump">21,618<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_ProductOrServiceAxis=us-gaap_MaintenanceMember', window );">Maintenance | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,479<span></span>
</td>
<td class="nump">21,846<span></span>
</td>
<td class="nump">25,023<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_ProductOrServiceAxis=tyl_AppraisalServicesMember', window );">Appraisal services | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_ProductOrServiceAxis=tyl_HardwareandOtherMember', window );">Hardware and other</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">23,012<span></span>
</td>
<td class="nump">23,658<span></span>
</td>
<td class="nump">17,679<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_ProductOrServiceAxis=tyl_HardwareandOtherMember', window );">Hardware and other | Operating segments | Enterprise Software</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">16,735<span></span>
</td>
<td class="nump">18,745<span></span>
</td>
<td class="nump">13,057<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_ProductOrServiceAxis=tyl_HardwareandOtherMember', window );">Hardware and other | Operating segments | Appraisal and Tax</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">21<span></span>
</td>
<td class="nump">32<span></span>
</td>
<td class="nump">10<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_ProductOrServiceAxis=tyl_HardwareandOtherMember', window );">Hardware and other | Corporate</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>
</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</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>
</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenues</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="nump">$ 6,256<span></span>
</td>
<td class="nump">$ 4,881<span></span>
</td>
<td class="nump">$ 4,612<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_SegmentReportingInformationCapitalExpenditures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Segment reporting information, capital expenditures.</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;">tyl_SegmentReportingInformationCapitalExpenditures</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_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=6876686&amp;loc=d3e534808-122878<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 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<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)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<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=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: 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=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember</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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_EnterpriseSoftwareMember</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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=tyl_AppraisalAndTaxMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=tyl_CorporateAndEliminationsMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=tyl_OperatingSegmentsAndCorporateNonSegmentMember</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=us-gaap_LicenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_LicenseMember</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=us-gaap_SubscriptionAndCirculationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_SubscriptionAndCirculationMember</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=us-gaap_TechnologyServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_TechnologyServiceMember</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=us-gaap_MaintenanceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=us-gaap_MaintenanceMember</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=tyl_AppraisalServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_AppraisalServicesMember</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=tyl_HardwareandOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=tyl_HardwareandOtherMember</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>97
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6831740288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Operating lease renewal term (up to)</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Operating lease, cost</a></td>
<td class="nump">$ 9,922<span></span>
</td>
<td class="nump">$ 7,400<span></span>
</td>
<td class="nump">$ 6,900<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_LessorOperatingLeaseRenewalTerm', window );">Lessor, operating lease renewal term</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RentalIncomeNonoperating', window );">Rental income</a></td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="nump">$ 1,200<span></span>
</td>
<td class="nump">$ 1,500<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Operating lease term</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [Line Items]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Operating lease term</a></td>
<td class="text">8 years<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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease cost recognized by lessee for lease contract.</p></div>
<a 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> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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=77888399&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_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease renewal, 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918673-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_LesseeOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918673-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_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-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_LessorOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessor's operating lease renewal, 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919359-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasedAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_RentalIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Income earned by providing the use of assets to an outside party in exchange for a payment or series of payments that is nonoperating in 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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&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_RentalIncomeNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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>98
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6826448080">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Maturity of lease liabilities (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">2020</a></td>
<td class="nump">$ 7,684<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2021</a></td>
<td class="nump">6,246<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2022</a></td>
<td class="nump">3,960<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2023</a></td>
<td class="nump">2,923<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2024</a></td>
<td class="nump">2,478<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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">2,042<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">25,333<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: Interest</a></td>
<td class="num">(2,124)<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_OperatingLeaseLiability', window );">Present value of operating lease liabilities</a></td>
<td class="nump">$ 23,209<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_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 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=77888426&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 payments for operating lease, due after fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=77888426&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_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 payments for operating lease, due in fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=77888426&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 payments for operating lease, due in fourth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=77888426&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 payments for operating lease, due in third fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=77888426&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 payments for operating lease, due in second fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=77888426&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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for operating lease having an initial or remaining lease term in excess of one year due in remainder of fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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=77888426&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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=77888426&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=77888419&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6826222784">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Deferred Revenue and Performance Obligations - Narrative (Details)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligations</a></td>
<td class="nump">$ 1,460<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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-01-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="nump">49.00%<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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected timing of satisfaction period</a></td>
<td class="text">12 months<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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a 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 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems</td>
</tr>
<tr>
<td style="padding-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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-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_RevenueRemainingPerformanceObligationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.</p></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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2020-01-01</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>100
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6716105200">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Additional Information (Detail)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </div>
<div>legal_matter</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</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_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect', window );">Number of material legal proceedings pending</a></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_tyl_NumberOfLegalProceedingsThatHaveMaterialEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 legal proceedings that have material effect.</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;">tyl_NumberOfLegalProceedingsThatHaveMaterialEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823288160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Tax - Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Rate (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Federal income tax expense at statutory rate</a></td>
<td class="nump">$ 33,566<span></span>
</td>
<td class="nump">$ 32,733<span></span>
</td>
<td class="nump">$ 57,209<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_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State income tax, net of federal income tax benefit</a></td>
<td class="nump">6,999<span></span>
</td>
<td class="nump">7,953<span></span>
</td>
<td class="nump">4,754<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_IncomeTaxReconciliationDeductionsQualifiedProductionActivities', window );">Domestic production activities deduction</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,617)<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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount', window );">Excess tax benefits related to stock option exercises</a></td>
<td class="num">(29,819)<span></span>
</td>
<td class="num">(32,487)<span></span>
</td>
<td class="num">(40,624)<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_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit', window );">Tax Act adjustments</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,750)<span></span>
</td>
<td class="num">(25,992)<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_IncomeTaxReconciliationTaxCredits', window );">Tax credits</a></td>
<td class="num">(3,446)<span></span>
</td>
<td class="num">(3,715)<span></span>
</td>
<td class="num">(3,578)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpense', window );">Non-deductible business expenses</a></td>
<td class="nump">6,011<span></span>
</td>
<td class="nump">5,655<span></span>
</td>
<td class="nump">4,573<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_IncomeTaxReconciliationOtherAdjustments', window );">Other, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">19<span></span>
</td>
<td class="nump">160<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense benefit</a></td>
<td class="nump">$ 13,311<span></span>
</td>
<td class="nump">$ 8,408<span></span>
</td>
<td class="num">$ (6,115)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tax Cuts and Jobs Act, Measurement Period Adjustment, Income Tax Expense (Benefit)</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;">tyl_TaxCutsandJobsActMeasurementPeriodAdjustmentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for 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://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=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 740<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117330312&amp;loc=d3e23163-113944<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: 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=26873400&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 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-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 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&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_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://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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-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 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IncomeTaxReconciliationNondeductibleExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nondeductible expenses.</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=84230637&amp;loc=d3e32687-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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationNondeductibleExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://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=84230637&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://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=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: 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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IncomeTaxReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</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=84230637&amp;loc=d3e32687-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 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6821605888">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Other Intangible Assets - Summary of Estimated Annual Amortization Expense (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2019 </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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2020</a></td>
<td class="nump">$ 54,045<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2021</a></td>
<td class="nump">53,687<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2022</a></td>
<td class="nump">49,989<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2023</a></td>
<td class="nump">31,838<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2024</a></td>
<td class="nump">31,213<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Thereafter</a></td>
<td class="nump">$ 155,005<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6830947408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Tax (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Income Tax Provision (Benefit) on Income from Operations</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The </span><span style="font-family:inherit;font-size:10pt;">Income tax provision (benefit)</span><span style="font-family:inherit;font-size:10pt;"> on income from operations consists of the following:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Current:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>12,814</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,110</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>22,883</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,585</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,367</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,666</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,399</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,477</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,549</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,088</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(5,069</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(33,664</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,311</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,408</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,115</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation of U.S. Statutory Income Tax Rate to Effective Income Tax Expense Rate</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Reconciliation of the U.S. statutory income tax rate to our effective income tax expense rate for operations follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Federal income tax expense at statutory rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>33,566</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>32,733</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>57,209</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">State income tax, net of federal income tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,953</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,754</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Domestic production activities deduction</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2,617</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefits related to stock option exercises</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29,819</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(32,487</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(40,624</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax Act adjustments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,750</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(25,992</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Tax credits</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,446</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,715</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,578</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Non-deductible business expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,011</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,655</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,573</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other, net</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>160</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,311</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,408</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(6,115</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:justify;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The tax effects of the major items recorded as deferred tax assets and liabilities as of December 31 are:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax assets:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating expenses not currently deductible</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>10,214</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>8,989</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock option and other employee benefit plans</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,308</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>19,496</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Loss and credit carryforwards</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,841</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>17,999</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>53,363</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>46,484</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,923</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,049</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax assets, net of valuation allowance</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>51,440</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>45,435</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income tax liabilities:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intangible assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(84,019</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(70,752</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(9,265</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(8,455</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Prepaid expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,922</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(4,079</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred revenue</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,676</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,940</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total deferred income tax liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(99,882</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(87,226</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net deferred income tax liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(48,442</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(41,791</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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=84230637&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=84230637&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=84230637&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>104
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6716426656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Schedule of lease cost</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental information related to leases was as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other Information</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Cash Flows</span><span style="font-family:inherit;font-size:8pt;">&#160;</span><span style="font-family:inherit;font-size:8pt;">(in thousands):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid amounts included in the measurement of lease liabilities:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">Operating cash outflows from operating leases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,466</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Lease Term and Discount Rate:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average remaining lease term (years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.00</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of operating lease expense were as follows (in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:69.25925925925925%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:26%;"/><td style="width:1%;"/><td style="width:52%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Lease Costs</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Financial Statement Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,379</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Short-term lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,269</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Variable lease cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,274</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net lease cost</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,922</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock', window );">Schedule of leases assets and liabilities</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, ROU lease assets and lease liabilities for our operating leases were recorded in the consolidated balance sheet as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:59.62962962962963%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:75%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:22%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">December&#160;31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Assets:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>18,992</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Liabilities:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, short-term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,387</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases, long-term</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>16,822</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease liabilities</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><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_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock', window );">Schedule of supplemental information related to leases</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental information related to leases was as follows:</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.74074074074075%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:77%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other Information</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">For the year ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Cash Flows</span><span style="font-family:inherit;font-size:8pt;">&#160;</span><span style="font-family:inherit;font-size:8pt;">(in thousands):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid amounts included in the measurement of lease liabilities:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Times_New_Roman;font-size:8pt;">Operating cash outflows from operating leases</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;&#160;&#160;&#160;Right-of-use assets obtained in exchange for lease obligations (non-cash):</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,466</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;text-decoration:underline;">Lease Term and Discount Rate:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average remaining lease term (years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4.00</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of operating lease maturity</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, maturities of lease liabilities were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:66.11111111111111%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,684</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6,246</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,960</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,923</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,478</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,042</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total lease payments</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>25,333</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Less: Interest</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2,124</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Present value of operating lease liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>23,209</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock', window );">Schedule of future minimum lease commitments related to lease agreements under Topic 840</a></td>
<td class="text"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">, the future minimum lease commitments related to lease agreements under Topic 840, the predecessor of&#160;Topic&#160;842, were as follows (in thousands):</span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:65.92592592592592%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:72%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:25%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,994</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,146</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,976</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,925</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,164</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,132</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,337</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock', window );">Schedule of future minimum operating rental income</a></td>
<td class="text">Future minimum operating rental income based on contractual agreements is as follows (in thousands):<div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:72.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="5"/></tr><tr><td style="width:66%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:31%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Year ending December 31,</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Amount</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2020</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,341</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2021</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,372</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2022</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,402</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2023</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,432</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2024</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1,462</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>857</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>7,866</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Leases Assets And Liabilities [Table Text Block]</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;">tyl_ScheduleOfLeasesAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Supplemental Information Related To Leases [Table Text Block]</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;">tyl_ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tyl_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&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_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_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=77888426&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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLeaseIncomeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 components of income 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 30<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=119202524&amp;loc=SL77919372-209981<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 6A<br> -URI http://asc.fasb.org/extlink&amp;oid=118952077&amp;loc=SL77927221-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_OperatingLeaseLeaseIncomeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases 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/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41502-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>105
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823383840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">COMMITMENTS AND CONTINGENCIES</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">COMMITMENTS AND CONTINGENCIES</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other than routine litigation incidental to our business, there are </span><span style="font-family:inherit;font-size:10pt;"><span>no</span></span><span style="font-family:inherit;font-size:10pt;"> material legal proceedings pending to which we are party or to which any of our properties are subject.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>106
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6826147568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE-BASED COMPENSATION<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">SHARE-BASED COMPENSATION</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">SHARE-BASED COMPENSATION</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Compensation Plan</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In May 2018, stockholders approved the Tyler Technologies, Inc. 2018 Stock Incentive Plan ("the 2018 Plan") which amended and restated the existing Tyler Technologies, Inc. 2010 Stock Option Plan ("the 2010 Plan"). Upon stockholder approval of the 2018 Plan, the remaining shares available for grant under the 2010 Plan were added to the shares authorized for grant under the 2018 Plan. Additionally, any awards previously granted under the 2010 Plan that expire unexercised or are forfeited are added to the shares authorized for grant under the 2018 Plan.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During fiscal year&#160;</span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, we granted stock awards under the 2018 Plan in the form of stock options, restricted stock units and performance share units. Stock options generally vest after </span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>six years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant and have a contractual term of&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>10 years</span></span><span style="font-family:inherit;font-size:10pt;">. Once options become exercisable, the employee can purchase shares of our common stock at the market price on the date we granted the option. Restricted stock unit grants generally vest ratably over&#160;</span><span style="font-family:inherit;font-size:10pt;">three</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> of continuous service from the date of grant. Each performance share unit represents the right to receive&#160;one&#160;share of our common stock based on our achievement of certain financial performance targets during applicable performance periods. We account for share-based compensation utilizing the fair value recognition pursuant to ASC 718, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Stock Compensation</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span>3.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future grants under the plan from the </span><span style="font-family:inherit;font-size:10pt;"><span>22.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares previously approved by the shareholders.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Determining Fair Value of Stock Compensation</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Valuation and Amortization Method. We estimate the fair value of stock option awards granted using the Black-Scholes option valuation model. For restricted stock unit and performance stock unit awards, we amortize the fair value of all awards on a straight-line basis over the requisite service periods, which are generally the vesting periods.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Life. The expected life of awards granted represents the period of time that they are expected to be outstanding. The expected life represents the weighted-average period the stock options are expected to be outstanding based primarily on the options&#8217; vesting terms, remaining contractual life and the employees&#8217; expected exercise based on historical patterns.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Volatility. Using the Black-Scholes option valuation model, we estimate the volatility of our common stock at the date of grant based on the historical volatility of our common stock.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Risk-Free Interest Rate. We base the risk-free interest rate used in the Black-Scholes option valuation model on the implied yield currently available on U.S. Treasury zero-coupon issues with an equivalent remaining term equal to the expected life of the award.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Dividend Yield. We have not paid any cash dividends on our common stock in more than ten years and we do not anticipate paying any cash dividends in the foreseeable future. Consequently, we use an expected dividend yield of </span><span style="font-family:inherit;font-size:10pt;"><span>zero</span></span><span style="font-family:inherit;font-size:10pt;"> in the Black-Scholes option valuation model.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expected Forfeitures. We use historical data to estimate pre-vesting option forfeitures. We record share-based compensation only for those awards that are expected to vest.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following weighted average assumptions were used for options granted:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:65%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="8" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected life (in years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected volatility</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26.6</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26.7</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>28.1</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Risk-free interest rate</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>1.8</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2.7</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2.0</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Expected forfeiture rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">%</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Award Activity</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes restricted stock unit and performance stock unit activity during fiscal year </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> (shares in thousands):</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:12pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:57.03703703703704%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:60%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted Average Grant Date Fair Value per Share</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at January 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>336</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.29</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(2</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229.75</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>334</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.25</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>241.19</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Vested</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(76</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>221.15</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(14</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>229.75</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Unvested at December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>500</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>231.57</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Options granted, exercised, forfeited and expired are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="13"/></tr><tr><td style="width:53%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average Exercise</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Contractual Life</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">(Years)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Intrinsic Value</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2016</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>5,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>83.64</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>824</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>176.26</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,113</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>44.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(50</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>134.83</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2017</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,817</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>107.91</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>432</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>208.21</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(1,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66.53</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(31</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>158.80</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>4,092</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>129.51</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>162</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>251.58</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercised</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(999</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>96.92</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Forfeited</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>174.54</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Outstanding at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>3,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>145.27</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>499,124</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Exercisable at December&#160;31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>2,067</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>121.07</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>6</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>369,938</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We had unvested options to purchase </span><span style="font-family:inherit;font-size:10pt;"><span>1.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares with a weighted average grant date exercise price of </span><span style="font-family:inherit;font-size:10pt;"><span>$188.48</span></span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, and unvested options to purchase </span><span style="font-family:inherit;font-size:10pt;"><span>1.7 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares with a weighted average grant date exercise price of </span><span style="font-family:inherit;font-size:10pt;"><span>$169.24</span></span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2018</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other information pertaining to option activity was as follows during the twelve months ended December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Weighted average grant-date fair value of stock options granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>74.54</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66.52</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>55.56</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total intrinsic value of stock options exercised</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>155,899</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>176,716</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>137,699</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Share-Based Compensation Expense</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes share-based compensation expense related to share-based awards which is recorded in the consolidated statements of comprehensive income:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="11" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Years Ended December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2017</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Cost of software services, maintenance and subscriptions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>15,002</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>13,588</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>9,415</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Selling, general and administrative expenses</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>44,965</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>39,152</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>27,933</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Total share-based compensation expenses</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>59,967</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>52,740</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>37,348</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Excess tax benefit</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(29,819</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(32,487</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(40,624</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:20px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Net decrease (increase) in net income</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>30,148</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>20,253</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(3,276</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had </span><span style="font-family:inherit;font-size:10pt;"><span>$148.7 million</span></span><span style="font-family:inherit;font-size:10pt;"> of total unrecognized compensation cost related to unvested options and restricted stock units, net of expected forfeitures, which is expected to be amortized over a weighted average amortization period of </span><span style="font-family:inherit;font-size:10pt;"><span>2.5</span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;text-decoration:underline;">Employee Stock Purchase Plan</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) participants may contribute up to </span><span style="font-family:inherit;font-size:10pt;"><span>15%</span></span><span style="font-family:inherit;font-size:10pt;"> of their annual compensation to purchase common shares of Tyler. The purchase price of the shares is equal to </span><span style="font-family:inherit;font-size:10pt;"><span>85%</span></span><span style="font-family:inherit;font-size:10pt;"> of the closing price of Tyler shares on the last day of each quarterly offering period. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;31, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span>702,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future issuances the ESPP from the </span><span style="font-family:inherit;font-size:10pt;"><span>2.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares previously approved by the stockholders.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-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>107
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817886048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCRUED LIABILITIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">ACCRUED LIABILITIES</a></td>
<td class="text"><span style="font-family:inherit;font-size:10pt;">ACCRUED LIABILITIES</span><div style="line-height:120%;padding-bottom:12px;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued liabilities consist of the following at December&#160;31:</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:12px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued wages, bonuses and commissions</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>49,126</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>40,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">Other accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26,108</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>26,380</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>75,234</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>66,480</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 accounts payable and accrued liabilities at the end of 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://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),20,24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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>
</SEC-DOCUMENT>
